设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索

请问怎么索引物品的使用者?

查看数: 856 | 评论数: 3 | 收藏 1
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2023-5-10 01:45

正文摘要:

本帖最后由 15217320790 于 2023-5-11 22:38 编辑 3Q各位~

回复

765111039 发表于 2023-5-11 11:33:33
楼主的意思应该是给角色使用转职书的时候,给不同的人转职是吧
我也来说一个
首先打开脚本,搜索 def item_effect(item) ,如果是默认脚本的话是在 Game_Battler 3 里面
然后在下面命中的情况下,加一行脚本 $game_variables[1] = self.id  这样1号变量就等于使用者的ID
之后在公共事件分歧1号变量就可以了
如果你的物品是指定某人转职为某个职业
不用加上面的脚本,改为 加这样一行,self.class_id = item.recover_hp if item.element_set.include?(18)  ,
这样子的话就是 物品有18号属性时,将该角色转职为物品回复量ID的角色,
你设定18号属性为 转职书,那么拥有转职书的物品会有转职效果,转的职业是你给物品设定的是物品回复量的ID
最后,再关联一个事件跳到地图,提示转职成功。

点评

谢谢,多了一条思路,是的,不想列过多的事件。  发表于 2023-5-11 20:52
纯属小虫 发表于 2023-5-10 10:23:01
本帖最后由 纯属小虫 于 2023-5-10 14:54 编辑

给个思路,无论是在菜单中使用物品,还是在战斗中使用物品
指定的目标其实都是队伍中的某个角色(这个角色一定是在队伍中的)
所以不一定要用角色判定,可以用队伍index来判定,然后index反推选中的角色:

设置一个全局变量,用于记录使用物品后最后选中的目标index
$game_variable[自己定一个] 【使用物品后最后选中的目标index】

菜单中:
Scene_Item

找到:
def main
$game_variable[自己定一个] = 0 # 初始化一下(不填应该也没问题,但有极小概率出BUG)
......

然后找到
def update_target
......
if used
$game_variable[自己定一个] = @target_window.index #在这里添加一个全局变量,把指定目标角色数据代入这个变量中
......

========================================================================

公共事件中:
条件分支: 脚本: $game_variable[自己定一个] != 0
        事件脚本:
        a = $game_variable[自己定一个]
        @parameters[0] $game_party.actors[a].id
        @parameters[1] = *********(写上要更改的职业的id号)
        command_321
除此之外的场合
显示文章:变量 $game_variable[自己定一个] 存在错误
结束分支

最后初始化变量:
$game_variable[自己定一个] = 0


注意:这种方法不支持在战斗中的场景里判定!

点评

刚刚检查了一下,好像会有找不到角色的严重BUG。。。。。我改了一下  发表于 2023-5-10 14:54
谢谢,我尝试一下。  发表于 2023-5-10 12:03
金芒芒 发表于 2023-5-10 08:32:19
本帖最后由 金芒芒 于 2023-5-10 08:33 编辑

使用物品,物品选页有个公共事件

物品使用.png (134.7 KB, 下载次数: 6)

物品使用.png

物品2.png (99.24 KB, 下载次数: 10)

物品2.png

物品3.png (33.43 KB, 下载次数: 7)

物品3.png

点评

谢谢。  发表于 2023-5-10 12:01
拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-5-15 03:29

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表