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

Project1

 找回密码
 注册会员
搜索
查看: 2792|回复: 13
打印 上一主题 下一主题

[有事请教] 请问是否能用变量决定不同角色学不同技能?

[复制链接]

Lv2.观梦者

梦石
0
星屑
377
在线时间
125 小时
注册时间
2023-1-19
帖子
61
跳转到指定楼层
1
发表于 2023-1-24 19:07:44 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
比如我有主角A,主角B,主角C,分别给3个主角设置三个变量,叫潜力A,潜力B,潜力C。技能有火球术。

现在我希望使用物品技能书学习技能,一个物品叫技能书。使用物品就能学习这个技能。

是否能够达到,火球书需要潜力大于10才能学?

现在我想做到这个效果:我对主角A使用了技能书,会验证主角A潜力是否大于10,大于10能学会,否则提示潜力不足。然后同一个物品-技能书,对主角B和主角C使用,也会分别验证他们潜力是否大于10,是则学会,否则提示潜力不足。
请问能否做到这个效果?谢谢

Lv4.逐梦者

梦石
0
星屑
9852
在线时间
1884 小时
注册时间
2020-1-2
帖子
1089
2
发表于 2023-1-24 20:30:55 | 只看该作者
Yep-Item Requirements(物品使用限制就好了)  如果只想用脚本的话只需要物品效果添加公共事件然后公共事件的事件指令脚本复制粘贴我这个就好了

JAVASCRIPT 代码复制
  1. var a = $gameParty._targetActorId;
  2. if($gameActors.actor(a).skills().contains($dataSkills[技能ID])){
  3. $gameMessage.add("他已经学会了这个技能请不要再让他学")
  4. $gameParty.gainItem($dataItems[技能书ID], 1);}
  5. else{
  6. if([color=Red]$gameActors.actor(a).level >= 10[/color]){
  7. $gameActors.actor(a).learnSkill(技能ID);
  8. $gameMessage.add("成功学了了技能: 火球");
  9. }else{
  10. $gameMessage.add("你的潜力不足");
  11. $gameParty.gainItem($dataItems[技能书ID], 1);}
  12. };

如何修改:
将技能书ID替换成数据库对应的物品ID  技能ID也是替换成数据库那个技能的ID  我只是举个例子 这是判断使用技能书这个物品的角色的等级 $gameActors.actor(a).level >= 10
因为我不知道你的潜力指的是什么还有我这个写法是技能书是可以消耗的如果技能书是不可以消耗的那么就把两处的$gameParty.gainItem($dataItems[技能书ID], 1);删掉
还有技能书使用的是单体
B站没人气的夏目漠漠,直播间:5378938实用插件教程点击红字传送
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
377
在线时间
125 小时
注册时间
2023-1-19
帖子
61
3
 楼主| 发表于 2023-1-24 21:25:46 | 只看该作者
xiamumomo 发表于 2023-1-24 20:30
Yep-Item Requirements(物品使用限制就好了)  如果只想用脚本的话只需要物品效果添加公共事件然后公共事件 ...

谢谢大佬回答。
“潜力”是我设置的一个变量,3个角色分别有3个变量。现在的问题是,不同角色使用“技能书”物品之后,能因应不同角色的变量数值决定他是否能学会这个技能。比如同一个物品“技能书”。主角A的变量是11,使用该“技能书”能学会技能。而主角B的变量是5,使用该“技能书”便不能学会技能。能否做到这个效果?
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
9852
在线时间
1884 小时
注册时间
2020-1-2
帖子
1089
4
发表于 2023-1-24 21:43:52 | 只看该作者
haohaoniu 发表于 2023-1-24 21:25
谢谢大佬回答。
“潜力”是我设置的一个变量,3个角色分别有3个变量。现在的问题是,不同角色使用“技能 ...

只有3个角色吗
B站没人气的夏目漠漠,直播间:5378938实用插件教程点击红字传送
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
377
在线时间
125 小时
注册时间
2023-1-19
帖子
61
5
 楼主| 发表于 2023-1-24 21:48:24 | 只看该作者

是的,总共只有三个
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
9852
在线时间
1884 小时
注册时间
2020-1-2
帖子
1089
6
发表于 2023-1-24 22:01:38 | 只看该作者
haohaoniu 发表于 2023-1-24 21:48
是的,总共只有三个

把这个
  1. [color=Red]$gameActors.actor(a).level >= 10[/color]
  2. 脚本中的[color=Red]和[/color]是论坛字体颜色的我不知道什么时候点进去了
复制代码
删掉改为$gameVariables.value(a);然后你讲变量1到3分别对应1到3号角色还有
B站没人气的夏目漠漠,直播间:5378938实用插件教程点击红字传送
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
377
在线时间
125 小时
注册时间
2023-1-19
帖子
61
7
 楼主| 发表于 2023-1-24 22:37:41 | 只看该作者
xiamumomo 发表于 2023-1-24 22:01
把这个删掉改为$gameVariables.value(a);然后你讲变量1到3分别对应1到3号角色还有 ...

请问改成$gameVariables.value(a)之后,变量应该写在什么地方
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
9852
在线时间
1884 小时
注册时间
2020-1-2
帖子
1089
8
发表于 2023-1-24 22:48:20 | 只看该作者
haohaoniu 发表于 2023-1-24 22:37
请问改成$gameVariables.value(a)之后,变量应该写在什么地方
  1. var a = $gameParty._targetActorId;
  2. if($gameActors.actor(a).skills().contains($dataSkills[技能ID])){
  3. $gameMessage.add("他已经学会了这个技能请不要再让他学")
  4. $gameParty.gainItem($dataItems[技能书ID], 1);}
  5. else{var i =1;i <=3
  6. if($gameVariables.value(a) >= 10){
  7. $gameActors.actor(a).learnSkill(技能ID);
  8. $gameMessage.add("成功学了了技能: 火球");
  9. }else{
  10. $gameMessage.add("你的潜力不足");
  11. $gameParty.gainItem($dataItems[技能书ID], 1);}
  12. };
复制代码
B站没人气的夏目漠漠,直播间:5378938实用插件教程点击红字传送
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
9852
在线时间
1884 小时
注册时间
2020-1-2
帖子
1089
9
发表于 2023-1-24 22:52:16 | 只看该作者
haohaoniu 发表于 2023-1-24 22:37
请问改成$gameVariables.value(a)之后,变量应该写在什么地方

你不是3个角色每个分配一个变量  这样写就等于你数据库角色1号选择的是变量1的值  给1号用就是判断变量1给二号角色用就是判断变量2
B站没人气的夏目漠漠,直播间:5378938实用插件教程点击红字传送
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
377
在线时间
125 小时
注册时间
2023-1-19
帖子
61
10
 楼主| 发表于 2023-1-24 23:08:22 | 只看该作者
xiamumomo 发表于 2023-1-24 22:52
你不是3个角色每个分配一个变量  这样写就等于你数据库角色1号选择的是变量1的值  给1号用就是判断变量1 ...

那怎么知道他判断的是几号变量呢
回复 支持 反对

使用道具 举报

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

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

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

GMT+8, 2024-11-18 00:43

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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