Project1

标题: 有前辈实现了图标拖动吗,求思路。 [打印本页]

作者: 774741359    时间: 2013-10-10 10:07
标题: 有前辈实现了图标拖动吗,求思路。
所谓图标拖动就是大部分网游都有的,从背包里拖拽一个道具到指定位置,比如到空地上就丢掉。
到装备栏,符合条件就装备上。
求一个思路。

作者: lucifer4223    时间: 2013-10-10 11:32
挺复杂的,不过肯定可以,而且不难,我也在做。
先弄清楚鼠标的脚本就可以开始了。
然后就是得到当前队伍的物品,ID,数量。
绘制一个物品栏,图标阵列出来,每一种物品对应一个 x,y,

制作拖拽丢地上的话,就还要有两个要素,
一是获得当前地图的坐标,
二是需要先设定一些全局变量,记录你每丢出一个物品,这个物品的 ID,当前地图坐标

思路上就这样了,我是新人,并且是外行(建筑设计师),暂时也不知道具体怎么做。
作者: 774741359    时间: 2013-10-10 11:47
lucifer4223 发表于 2013-10-10 11:32
挺复杂的,不过肯定可以,而且不难,我也在做。
先弄清楚鼠标的脚本就可以开始了。
然后就是得到当前队伍的 ...

可以调用目标的一个方法来处理这个消息。

作者: yagami    时间: 2013-10-10 12:07
本帖最后由 yagami 于 2013-10-10 12:14 编辑

假设你做的是背包拖动 背包窗口的成员变量加个数组aaa保存icons地址
加个函数 setposition(i,x,y)
函数实现 aaa.x=x;aaa.y=y
drawitem的时候每draw1个icons 加入数组aaa
按下鼠标的时候 通过鼠标所在位置 确定位置 索引在aaa里所在位子 记录原坐标 返回位置i (%啊 *啊神马的 可以用鼠标矩形和icons矩形碰撞检测)
if i!=nil && 鼠标移动
setposition(i,x,y)
end
最后 松开鼠标的时候
通过鼠标位置做你装备 物品 或者 丢弃的事情  
if做了这些事情
刷新背包 并把那个icons从aaa移除
else
将icons的 x y 坐标还原
顺便给你给矩形碰撞的数学模型 a.x+a.width > b.x &&a.x < b.x+b.width && a.y+a.height >b.y && a.y<b.y+b.height
作者: 紫英晓狼1130    时间: 2013-10-11 21:02
本帖最后由 紫英晓狼1130 于 2013-10-11 21:04 编辑

我记得论坛里有一个借助DLL来达成LZ想要的效果,地址我再找找
http://rpg.blue/forum.php?mod=viewthread&tid=215350
作者: 芯☆淡茹水    时间: 2013-10-11 23:04
利用原有的鼠标脚本构思:
首先利用一个全局变量记录鼠标“拿起”的东西,此时可以显示拿起物品的图标图片在鼠标箭头
图片下,跟随鼠标移动,实现拖动效果。被拿起物品的窗口该物品的数量就减 1 。拖到新窗口后,
在空位置点鼠标左键,新窗口该物品数量 + 1,或是装备上了该物品,记录鼠标“拿起”东西的
全局变量就减去该物品或者清空(一次只能拿一样东西)。
作者: enghao_lim    时间: 2013-10-12 00:46
划分拖动区域
记录拖动坐标
逐区域检测坐标是否坐落该区域
符合条件执行相对处理
不符合条件跳过,到下一个区域
作者: 774741359    时间: 2013-10-13 13:28
各位,我不是说拖动,我是说当鼠标把图标放下的时候,产生的消息。
作者: 芯☆淡茹水    时间: 2013-10-14 18:40
66RPG»广场 › RM游戏制作 › RPG Maker 技术区 › RPG Maker XP 提问区 › 有前辈实现了图标拖动吗,求思路。 .

只能说,很囧~~~




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1