| 赞 | 66 |
| VIP | |
| 好人卡 | |
| 积分 | 19 |
| 经验 | |
| 最后登录 | 2026-7-23 |
| 在线时间 | 1555 小时 |
- 梦石
- 0
- 星屑
- 1907
- 在线时间
- 1555 小时
- 注册时间
- 2013-4-13
- 回帖
- 783
|
加入我们,或者,欢迎回来。
您需要 登录 才可以下载或查看,没有账号?注册会员
×
本帖最后由 沉滞的剑 于 2016-5-27 02:41 编辑
我还在继续制作在地图上摆放家具的脚本
现在的思路是利用在地图上添加事件来模拟摆放的效果.
后续也可以利用事件做和家具的交互.
我想用区域来表示该地形是否可以通行
那我首先需要一个能指示摆放位置的游标, 目前是思路是用Character来做, 最好有动画效果的.
然后我想展示一个"待放置"的半透明效果的家具, 再按下一个放置键. 假如是"ok"的话就在游标的位置创建一个事件.
如何创建一个Character?并设置动画效果? 就好像原地踏步之类的?
如果我想放置一个家具(假设家具没有旋转角度), 用一个事件表示的话, 我应该准备什么格式的素材, 大小有限制么?
如何在地图上创建/删除/访问一个事件呢? 我VA的时候就不太看得懂事件和解释器, 有朋友能帮忙解释下这个怎么用么?
添加事件这个部分
我现在用F8的控制台试图添加一个新的事件, 在地图场景下, 输入如下代码:
[pre lang="javascript"]var e = {"id":2,"name":"EV002","note":"","pages":[{"conditions":{"actorId":1,"actorValid":false,"itemId":1,"itemValid":false,"selfSwitchCh":"A","selfSwitchValid":false,"switch1Id":1,"switch1Valid":false,"switch2Id":1,"switch2Valid":false,"variableId":1,"variableValid":false,"variableValue":0},"directionFix":false,"image":{"tileId":0,"characterName":"Actor1","direction":2,"pattern":0,"characterIndex":0},"list":[{"code":101,"indent":0,"parameters":["Actor1",0,0,2]},{"code":401,"indent":0,"parameters":["I am the 3rd Event"]},{"code":0,"indent":0,"parameters":[]}],"moveFrequency":3,"moveRoute":{"list":[{"code":0,"parameters":[]}],"repeat":true,"skippable":false,"wait":false},"moveSpeed":3,"moveType":0,"priorityType":1,"stepAnime":true,"through":false,"trigger":0,"walkAnime":false}],"x":5,"y":5};//这是一段json string 来描述一个事件
var l = $dataMap.events.length;
$dataMap.events[l] = e;
$gameMap._events[l] = new Game_Event($gameMap._mapId, l);[/pre]:
经测试, 事件效果会在指定位置(范例中为(5,5))会被触发, 但是没有行走图.
不知道还需要做什么让这个事件显示行走图, 求助.
发现了问题是: 没有把行走图放入显示容器中.
解决方法:
[pre lang="javascript"]var e = {"id":2,"name":"EV002","note":"","pages":[{"conditions":{"actorId":1,"actorValid":false,"itemId":1,"itemValid":false,"selfSwitchCh":"A","selfSwitchValid":false,"switch1Id":1,"switch1Valid":false,"switch2Id":1,"switch2Valid":false,"variableId":1,"variableValid":false,"variableValue":0},"directionFix":false,"image":{"tileId":0,"characterName":"Actor1","direction":2,"pattern":0,"characterIndex":0},"list":[{"code":101,"indent":0,"parameters":["Actor1",0,0,2]},{"code":401,"indent":0,"parameters":["I am the 3rd Event"]},{"code":0,"indent":0,"parameters":[]}],"moveFrequency":3,"moveRoute":{"list":[{"code":0,"parameters":[]}],"repeat":true,"skippable":false,"wait":false},"moveSpeed":3,"moveType":0,"priorityType":1,"stepAnime":true,"through":false,"trigger":0,"walkAnime":false}],"x":5,"y":5};
var l = $dataMap.events.length;
$dataMap.events[l] = e;
$gameMap._events[l] = new Game_Event($gameMap._mapId, l);
SceneManager._scene.children[0]._tilemap.addChild(new Sprite_Character($gameMap._events[l]));[/pre]
|
|