Dream Mod 3.0Dream Mod 3.0
首页
快速开始
资源库
首页
快速开始
资源库
  • 进度

    • 更新日志
  • 指南

    • 快速上手
    • App.lua
    • 地图
    • 角色
    • 道具
    • 技能
    • 状态
    • 窗口
    • 触发器
    • 成长
    • 皮肤
    • 自定义组件
  • Api

    • 引擎
    • 地图
    • 角色
    • 道具
    • 技能
    • 状态
    • 窗口
    • 自定义组件
    • 缓动
    • 全局
  • 控件

    • 标签
    • 按钮
    • 图片框
    • 动画框
    • 文本框
    • 进度条
    • 技能格子
    • 快捷格子
    • 包裹格子
    • 道具格子
    • 角色框
    • 选择框
    • 选择夹
    • 容器
    • 地图框
    • 滑块条
    • 组合框
    • 输入框
  • 组件

    • 文本
    • 艺术字
    • 精灵
    • 矩形
    • 圆形
  • 其他

    • 丰富文本
    • 模板变量
    • 游戏盒子

地图

提示

游戏中当前主角所在地图,可以通过 引擎.地图快捷访问。

属性

名称

  • 类型:文本
  • 读写:只读
  • 说明:地图对象的名称。

显示名

  • 类型:文本
  • 读写:只读
  • 说明:地图对象的显示名。

地图信息

  • 类型:table
  • 读写:读写
  • 详情:当前地图信息。
名称类型说明
宽度数值当前地图的宽度。
高度数值当前地图的高度。
格子宽度数值当前地图的格子宽度。
格子高度数值当前地图的格子高度。
格子列数数值当前地图的格子列数。
格子行数数值当前地图的格子行数。
鼠标坐标x数值鼠标指针的当前地图坐标x
鼠标坐标y数值鼠标指针的当前地图坐标y
鼠标格子x数值鼠标指针的当前地图格子x
鼠标格子y数值鼠标指针的当前地图格子y
焦点角色对象当前鼠标的焦点角色
友方数量数值友方阵营的角色数量
友方存活数值友方阵营的存活数量
敌方数量数值敌方阵营的角色数量
敌方存活数值敌方阵营的存活数量
中立数量数值中立阵营的角色数量
中立存活数值中立阵营的存活数量
调试输出(引擎.地图.地图信息.宽度)

镜头平滑移动

  • 类型:逻辑
  • 读写:读写
  • 说明:用于配合镜头位置变化时使用,将镜头缓动到新的目标点。

环境色

  • 类型:RGBA
  • 读写:读写
  • 说明:动态读写地图当前环境色。

黑白画面

  • 类型:逻辑
  • 读写:读写
  • 说明:地图是否显示为黑白效果。

暂停

  • 类型:逻辑
  • 读写:读写
  • 说明:暂停继续地图游戏状态。

鼠标事件

  • 类型:逻辑
  • 读写:读写
  • 说明:是否触发系统事件中的鼠标事件。

主角

  • 类型:角色对象
  • 读写:只读
  • 说明:你可以在脚本中使用 引擎.地图.主角 快捷获得当前的主角对象。

镜头对象

  • 类型:包含属性{x,y}的table
  • 读写:只写
  • 说明:更改当前地图的镜头绑定。
引擎.地图.镜头对象 = 引擎.地图.主角
引擎.地图.镜头对象 = 其他角色.....

引擎.地图.镜头对象 = {x=100,y=100} -- 固定镜头位置

动态镜头 = {x=100,y=100}
引擎.地图.镜头对象 = 动态镜头 -- 绑定一个自己的镜头位置对象
动态镜头.x = 动态镜头.x + 10  -- 改变x,y值镜头也会随之移动
动态镜头.y = 动态镜头.y + 10

视距

  • 类型:小数
  • 读写:读写
  • 说明:镜头的视野缩放倍数,默认:1.0。

加速

  • 类型:小数
  • 读写:读写
  • 说明:地图逻辑加速倍数,默认:1.0。

方法

创建角色

创建角色
说明:在地图上动态创建角色。
参数名称值的类型是否必填说明描述
名称 文本true角色组件的名称
格子x 整数true刷怪的中心点x
格子y 整数true刷怪的中心点y
阵营 文本true"敌方" "友方" "中立"
范围 整数true距离中心刷怪点的半径
数量 整数true刷几只怪
附加 tabletrue可以替换掉默认配置项属性
参数名称值的类型说明描述
角色大小 数值
方向 数值出生方向:0-7
重生间隔 整数
显示名 文本
仇恨联动 整数格子范围,受伤后会通知联动范围内所有的友方一起攻击仇恨来源.默认:0
血条效果 table
主动攻击 逻辑
巡逻范围 整数/table
移动间隔 整数
状态 table
掉落 table
附加 table

示例

地图对象.创建角色("稻草人",20,20,"敌方",20,6); 

local 附加配置 = 
{
  角色大小=1.0,
  重生间隔=300000,
  附加={boss=true},
  掉落={"木剑 1/1","金币100 4/1"},
  状态={
    {"通用增强",{maxhp_百分比=100,攻击_百分比=30,防御_百分比=30}},
    {"BOSS增强",{}}
  }
}

地图对象.创建角色("稻草人BOSS",20,20,"敌方",20,1,附加配置); 
返回值值的类型说明描述
角色对象组 table {} 返回实际刷新成功的角色对象数组

注意事项
1、使用前确保角色组件是否已经正确添加到项目中。

取出角色

取出角色
说明:在地图上取出有效角色。
参数名称值的类型是否必填说明描述
格子x 整数true中心点x
格子y 整数true中心点y
范围 整数true距离半径
阵营 整数false 1:友方 -1:敌方 0:中立
威望 整数false限制多少威望内 -1:不限制
取出数量 整数false 最多取出几个角色

示例

local 主角对象 = 引擎.地图.主角
local 角色组 = 主角对象.地图.取出角色(主角对象.格子x,主角对象.格子y,5,-主角对象.阵营)
调试输出("附近敌方数量:" ,#角色组)
返回值值的类型说明描述
角色对象组 table {} 返回角色对象数组

地图格子

地图格子
说明:取出或者改变地图格子状态。
参数名称值的类型是否必填说明描述
格子x 整数true
格子y 整数true
类型 整数false不填表示取出 填写表示设置 0通行 1障碍 2透明 3障碍+透明

示例

调试输出(地图对象.地图格子(20,20)) -- 取出

地图对象.地图格子(20,20,1) -- 设置成障碍
返回值值的类型说明描述
类型 整数0通行 1障碍 2透明 3障碍+透明

地图物件

地图物件
说明:改变地图物件可视状态。
参数名称值的类型是否必填说明描述
名称标识 文本true
可视 逻辑true

示例

引擎.地图.地图物件("位置1",true)

地图光源

地图光源
说明:改变地图光源可视状态。
参数名称值的类型是否必填说明描述
名称标识 文本true
可视 逻辑true

示例

引擎.地图.地图光源("光源1",true)

掉落物品

掉落物品
说明:往地图对象中掉落一个物品。
参数名称值的类型是否必填说明描述
格子x 整数true
格子y 整数true
道具名称 文本true延迟执行
是否固定掉落位置 逻辑true

示例

local 损失金币 = 99999
local 道具对象 = 引擎.地图.掉落物品(引擎.地图.主角.格子x,引擎.地图.主角.格子y,"死亡金币",true)
if (道具对象) then
  道具对象.显示名 = "金币("  .. 损失金币 .. ")"
end
返回值值的类型说明描述
道具对象 道具对象掉落成功返回道具对象否则为nil

设置主角

设置主角
说明:将一个角色对象设置成主角。
参数名称值的类型是否必填说明描述
角色对象 角色组件true
切换镜头 逻辑false是否自动绑定镜头 默认:true

示例

引擎.地图.设置主角(self.主控角色) 

重置

重置
说明:还原地图到第一次进入时的状态。

示例

引擎.地图.重置();

注意事项
1、地图配置项中的地图角色会重新刷新。
2、会再次触发地图配置项中的创建事件。
3、主角会回到出生点,如果有宠物会自动清空。
4、地图对象中的附加属性会被清空。

抖动

抖动
说明:产生一次地图抖动效果,抖动幅度会根据时间逐渐衰弱。
参数名称值的类型是否必填说明描述
持续时间 整数true单位:毫秒
抖动幅度 整数true

示例

引擎.地图.抖动(2000,10);

坐标转换

坐标转换
说明:转换坐标。
参数名称值的类型是否必填说明描述
x 整数true
y 整数true
模式 整数true0.地图坐标转屏幕坐标
1.屏幕坐标转地图坐标
2.地图坐标转地图格子
3.地图格子转地图坐标

示例

local 地图坐标x,地图坐标y = 引擎.地图.坐标转换(50,50,3)
调试输出(地图坐标x,地图坐标y)
返回值值的类型说明描述
x 整数
y 整数

加入事件

加入事件
说明:往地图对象中加入一个自定义事件。
参数名称值的类型是否必填说明描述
事件名称 文本true触发的事件名称
附加信息 tablefalse事件触发时可以取出
延迟时间 数值false延迟执行
自动销毁 逻辑false是否只执行一次,默认:true

示例

系统事件 = {

    创建 = function(地图对象)
        地图对象.加入事件("自动刷怪",{},500,false)
    end,

    自动刷怪 = function (地图对象,tbl,dt,time)
        调试输出(tbl,dt,time)
    end,

}

提示

利用自定义事件,可以在不同对象之间进行交互。 自定义事件。

删除事件

删除事件
说明:删除指定自定义事件。
参数名称值的类型是否必填说明描述
事件名称 文本true

示例

系统事件 = {

    创建 = function(地图对象)
        地图对象.加入事件("自动刷怪",{},500,false)
    end,

    自动刷怪 = function (地图对象,tbl,dt,time)
        地图对象.删除事件("自动刷怪")
    end,

}
Prev
引擎
Next
角色