查看: 6581|回复: 6

[已经解决] 【★】如何实现物品在地图任意位置的收起与摆放?

[复制链接]

砂上描绘的愿想<

梦石
15
星屑
4156
在线时间
5078 小时
注册时间
2012-1-15
回帖
4362

开拓者贵宾短篇七成年组亚军剧作品鉴家

发表于 2012-10-8 13:59:15 | 显示全部楼层 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有账号?注册会员

×
本帖最后由 迷糊的安安 于 2012-10-25 10:58 编辑

本问题为【Ace推荐问答计划】活动问题。
详情请点击:http://rpg.blue/forum.php?mod=viewthread&tid=251118

实现要求:在特定的地图区域,可以把身上的部分物品(例如椅子)摆放到该地图特定区域的任意位置。也可以把部分物品收走进物品栏。可以考虑制作一个“主角摆放障碍物阻挡怪物直到撑过若干分钟”的小游戏。
在地图上摆满事件格的方式是不可取的。

点评

不用鼠标。  发表于 2012-10-8 16:19
嗷呜,这应该要用到鼠标吧?  发表于 2012-10-8 16:07
无明病目虚空见花月 睁眼梦不绝
梦石
0
星屑
275
在线时间
1373 小时
注册时间
2005-10-16
回帖
5038

贵宾

发表于 2012-10-9 10:59:48 | 显示全部楼层
事件用多个事件页来实现就好,配合ACE的特殊物品调用功能,获取物品ID,把这个事件移动到角色面前的位置,需要做范例?
我只个搬答案的
叔叔我已经当爹了~
婚后闪人了……
回复

使用道具 举报

梦石
0
星屑
50
在线时间
146 小时
注册时间
2011-9-16
回帖
36
发表于 2012-10-9 11:03:14 | 显示全部楼层
用变量判断地图ID和地点,然后再用公共事件调用吧……
回复

使用道具 举报

梦石
0
星屑
1093
在线时间
881 小时
注册时间
2012-6-28
回帖
972
发表于 2012-10-18 17:29:47 | 显示全部楼层
本帖最后由 没是的人 于 2012-10-19 10:45 编辑

附上工程:
(百度网盘)
(¥http://pan.baidu.com/share/link?shareid=89746&uk=3993422208)(有错误,不要下这个)
http://pan.baidu.com/share/link?shareid=90151&uk=3993422208(第二版,修正了两个bug)
这次的范例用了一个外挂脚本——
因为箱子放地上了以后,进出房间要保证箱子的位置不刷新掉,要是用事件来完成这个的话,工程就失去了可扩展性
用的是可乐君的这个脚本@feizhaodan(场所移动后保存事件位置 ):
http://rpg.blue/forum.php?mod=vi ... p;extra=#pid1895656
想那这个范例,做游戏的同学要看看这个脚本怎么用,别把自己原有的地图上的事件颠覆了
注:如果不想用这个脚本也可以(什么都不用改,就把范例中的这个脚本去掉就好了)
不过这样就要在游戏中设置限制,不能让玩家进出门来掩饰bug,比如:完成房间内的解谜才能出门,之类的。
如果觉得这个bug无所谓(其实不追求完美,不影响游戏流程的话的确可忽略),不限制也行



工程里的范例有两部分:自己看↓
1.png
2.png
3.png
在特定的地图区域,(实现,在非物品使用区域使用物品时候系统会提示)
可以把身上的部分物品摆放到该地图特定区域的任意位置。也可以把部分物品收走进物品栏。(实现,各项操作不冲突,进出房门物品位置不变)
可以考虑制作一个“主角摆放障碍物阻挡怪物直到撑过若干分钟”的小游戏。(改进,做了两个,一个是用箱子(椅子?无所谓啦,没素材)来堵怪物,一个是用捕兽夹来抓怪物)
在地图上摆满事件格的方式是不可取的。(肯定不会这样啦)
总体思路:
任意位置的物品捡拾和摆放是一种视觉上的假象,他的本质是
5.png
6.png
箱子有两个事件页,按确定键后会切到第二页(空白),造成箱子被捡走的假象,同时物品“木箱子”+1
在使用“木箱子”的时候,调用公共事件,判断场地上已经变成空白的箱子事件,把箱子事件移动到人物的面前一格,
再把事件页切到第一页(同时物品“木箱子”-1),造成箱子被摆放的假象
4.png



本范例有可扩展性,但是要保证物品的个数不能超过地图中准备的事件个数(要设置限制,比如捕兽夹携带个数不能超过n个,n为地图中事件准备的个数)������������

点评

把那几句事件脚本用默认的事件功能写出来是不是更方便大家学习呢?  发表于 2012-10-19 18:33

评分

参与人数 2星屑 +60 梦石 +8 收起 理由
迷糊的安安 + 8 最佳答案 好人卡+4
怪蜀黍 + 60 范例太萌了,好喜欢

查看全部评分

不追求华丽的商业素材;不依赖与自己运用能力不符的外挂脚本;不搞华而不实的无用噱头。
                    修改,使用最朴实的素材,融入自己的智慧做最好的游戏!
                                    点这里!暂不设加入门槛
         
                               我觉得我的优点是,会认真的画每一张地图。
回复

使用道具 举报

八宝粥的基叔

梦石
0
星屑
4957
在线时间
5234 小时
注册时间
2009-4-29
回帖
14054

贵宾

发表于 2012-10-18 18:59:31 | 显示全部楼层
没是的人 发表于 2012-10-18 17:29
附上工程:
(百度网盘)
http://pan.baidu.com/share/link?shareid=89746&uk=3993422208

范例做得号萌哦,超喜欢。
这里需要优化一下:
4.PNG

点评

还有蝎子毒囊,虽然文字写了得到了,可是实际上没得到的说,喵~~[url=home.php?mod=space&username=没是的人]@没是的人[/url]  发表于 2012-10-18 19:01

评分

参与人数 1星屑 +40 收起 理由
没是的人 + 40 多谢测评

查看全部评分

《逝去的回忆3:四叶草之梦》真情发布,欢迎点击图片下载试玩喵。

《逝去的回忆3》的讨论群:
一群:192885514
二群:200460747
回复

使用道具 举报

梦石
0
星屑
1093
在线时间
881 小时
注册时间
2012-6-28
回帖
972
发表于 2012-10-18 23:50:35 | 显示全部楼层
本帖最后由 没是的人 于 2012-10-19 10:45 编辑
protosssonny 发表于 2012-10-18 18:59
范例做得号萌哦,超喜欢。
这里需要优化一下:


重传范例:
(百度网盘)
http://pan.baidu.com/share/link?shareid=90151&uk=3993422208
以修正毒囊未得到的问题,(小细节物品居然给忘了,其实物品都设计好了)
修正捕兽夹放到树上的问题:
一激动把所有地方都铺上区域1了
1.png
把不能通行的这部分去掉就可以了,我粗心,大家可不要粗心啊!
2.png
多谢p叔测试

评分

参与人数 1星屑 +20 收起 理由
怪蜀黍 + 20 修正BUG的奖励

查看全部评分

不追求华丽的商业素材;不依赖与自己运用能力不符的外挂脚本;不搞华而不实的无用噱头。
                    修改,使用最朴实的素材,融入自己的智慧做最好的游戏!
                                    点这里!暂不设加入门槛
         
                               我觉得我的优点是,会认真的画每一张地图。
回复

使用道具 举报

梦石
0
星屑
1093
在线时间
881 小时
注册时间
2012-6-28
回帖
972
发表于 2012-10-19 19:15:42 | 显示全部楼层
@迷糊的安安
1.png
最多这样了,就两句我就解释一下好了,应该不难
1.$game_self_switches[[地图id,事件id ,"独立开关字母"]] == false/true(真假,代表了独立开关的开关)
用其他事件来控制独立开关
主要原因是:事件形式没有控制其他事件独立开关的功能(不用独立开关又没有扩展性了)
2.$game_map.events[id].moveto(x,y)
设置事件位置,events[id],里的id是事件id,x,y就是想要移动到的坐标
主要原因是:在事件方法不能指定以变量为目标的事件的移动,想要移动的事件必须直接指定,虽然可以用条件分歧来判断,但肯定会失去扩展性了
不追求华丽的商业素材;不依赖与自己运用能力不符的外挂脚本;不搞华而不实的无用噱头。
                    修改,使用最朴实的素材,融入自己的智慧做最好的游戏!
                                    点这里!暂不设加入门槛
         
                               我觉得我的优点是,会认真的画每一张地图。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部