开源
功能说明:该程序是一个基于易语言(EPL)开发的轻量级2D横版策略类游戏核心引擎,主要面向塔防、单位部署与实时战斗模拟场景。程序以“单位(Unit)”为核心抽象对象,通过动画框控件实现地图视图与角色渲染,支持多类型作战单位(如执法者、战斗机、歼击机、移动要塞、轻战车等)的动态创建、位置追踪、自动寻敌与攻击逻辑。程序具备完整的输入响应系统(方向键/WASD/光标键控制视角移动)、单位生命周期管理(含ID分配、坐标更新、销毁回收)、敌我识别与距离判定机制,并内置环形阵列坐标预设(用于布阵或技能范围定位),以及POC(Point of Control)控制点状态监控、怪物刷新调度、作战时长统计等策略层功能。其关键子程序如_时钟_机器人_周期事件调用单位监视,实现每周期遍历敌方单位并尝试锁定最近我方单位进行追踪攻击;移动控制子程序(左走/右走/上走/下走)结合可视区(宽高)与移距参数,实现平滑的地图视角拖拽,而非角色自身移动——表明本程序采用“上帝视角”或“战略镜头”,玩家操控的是战场视野与单位部署,而非单一主角。变量命名体系(如“杀敌数”“站领数”“POC数”“作战时长”“刷怪数据”)及结构体定义(单位、POC状态、矩形范围、点坐标数组)进一步印证其为一个具备资源控制、区域占领、波次进攻、自动攻防逻辑的策略游戏框架。综上,该程序并非单机动作游戏,而是一个可扩展的、面向中文开发者定制的2D策略游戏原型引擎,适用于开发类似《王国保卫战》《植物大战僵尸》简化版或军事沙盘推演类应用,核心价值在于提供单位管理、AI基础行为(追击/静默/范围判定)、地图交互与计时统计等底层支撑模块。
======窗口程序集1
| |
| |------ _游戏窗口_创建完毕
| |
| |------ _动画框_按下某键
| |
| |------ _时钟_移动_周期事件
| |
| |------ 左走
| |
| |------ 右走
| |
| |------ 上走
| |
| |------ 下走
| |
| |------ _时钟_机器人_周期事件
| |
| |------ 环境监视
| |
| |------ 单位监视
| |
| |------ _时钟_主角_周期事件
| |
| |------ 求角度
| |
| |------ 行进
| |
| |------ _动画框_碰撞到物体
| |
| |------ 查我单位编号
| |
| |------ 查找POC
| |
| |------ _动画框_碰撞到边界
| |
| |------ 查找单位号
| |
| |------ 复活
| |
| |------ _游戏窗口_尺寸被改变
| |
| |------ 开始刷怪
| |
| |------ 更换图片
| |
| |------ _动画框_监视键被按下
| |
| |------ _时钟_加血_周期事件
| |
| |------ _动画框_鼠标位置被移动
| |
| |------ 计算炮口
| |
| |------ _时钟_计时_周期事件
| |
| |------ 初始化地图
| |
| |------ 生成地图
| |
| |------ _游戏窗口_位置被改变
| |
| |------ _游戏窗口_将被销毁
| |
| |------ _动画框_物体右键被按下
| |
| |------ 设定追踪怪
| |
| |------ _动画框_进入物体
| |
| |------ _动画框_自动前进停止
| |
| |------ _动画框_鼠标右键被放开
| |
| |------ _动画框_离开物体
| |
| |------ _动画框_动画框鼠标位置改变
| |
| |
======窗口程序集2
| |
| |------ _按钮1_被单击
| |
| |------ __启动窗口_创建完毕
| |
| |------ _按钮2_被单击
| |
| |------ _按钮3_被单击
| |
| |
======窗口程序集3
| |
| |------ _地图编辑器_创建完毕
| |
| |------ _地图框_鼠标左键被按下
| |
| |------ 生成物体
| |
| |------ _地图框_物体左键被按下
| |
| |------ _地图框_物体左键被放开
| |
| |------ _地图框_鼠标位置被移动
| |
| |------ 显示物体属性
| |
| |------ _地图编辑器_位置被改变
| |
| |------ _地图框_物体右键被按下
| |
| |------ _下移一层_被选择
| |
| |------ _上移一层_被选择
| |
| |------ _删除_被选择
| |
| |------ _复制_被选择
| |
| |------ _粘贴_被选择
| |
| |------ _地图框_鼠标右键被按下
| |
| |------ _地图编辑器_尺寸被改变
| |
| |------ _保存地图_被选择
| |
| |------ _新建地图_被选择
| |
| |------ 更新地图数据
| |
| |------ _打开地图_被选择
| |
| |------ 生成地图
| |
| |------ _修改地图_被选择
| |
| |------ _地图框_进入物体
| |
| |------ _地图框_离开物体
| |
| |------ _剪切_被选择
| |
| |------ _地图框_按下某键
| |
| |
======窗口程序集4
| |
| |------ _按钮1_被单击
| |
| |------ _工具窗_创建完毕
| |
| |
======窗口程序集5
| |
| |------ _编辑框1_失去焦点
| |
| |------ 修改改属性
| |
| |------ _属性窗_创建完毕
| |
| |------ _编辑框1_按下某键
| |
| |
======窗口程序集6
| |
| |------ _按钮1_被单击
| |
| |------ _按钮2_被单击
| |
| |------ _按钮3_被单击
| |
| |------ _按钮4_被单击
| |
| |------ _新建窗_创建完毕
| |
| |------ _编辑框3_获得焦点
| |
| |------ _编辑框3_失去焦点
| |
| |------ _时钟1_周期事件
| |
| |
======功能模块
| |
| |------ 求两点距离
| |
| |------ 子程序1
| |
| |------ 查三角函数
注:本站源码主要来源于网络收集。如有侵犯您的利益,请联系我们,我们将及时删除!
部分源码可能含有危险代码,(如关机、格式化磁盘等),请看清代码在运行。
由此产生的一切后果本站均不负责。源码仅用于学习使用,如需运用到商业场景请咨询原作者。
使用本站源码开发的产品均与本站无任何关系,请大家遵守国家相关法律。