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

Project1

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

[已经解决] 求教不用公共变量计算51个角色使用100种不同技能次数的写法

[复制链接]

Lv5.捕梦者

梦石
0
星屑
33208
在线时间
10495 小时
注册时间
2009-3-15
帖子
4756
1
发表于 2019-10-21 10:56:49 | 显示全部楼层
公共变量也可以用数组..塞多少个都没问题..

评分

参与人数 1+1 收起 理由
taeckle + 1 求大神指点一二

查看全部评分

回复 支持 反对

使用道具 举报

Lv5.捕梦者

梦石
0
星屑
33208
在线时间
10495 小时
注册时间
2009-3-15
帖子
4756
2
发表于 2019-10-23 00:42:09 | 显示全部楼层
本帖最后由 soulsaga 于 2019-10-23 09:53 编辑

RUBY 代码复制
  1. class Game_Battler
  2. attr_accessor :skill_count                    # skill_count                    # 技能次数
  3. #--------------------------------------------------------------------------
  4.   # ● 返回技能次数哈希表
  5.   #--------------------------------------------------------------------------
  6.   def skill_count
  7.     return @skill_count || {}
  8.   end
  9. end

插入到MAIN上面
然后代入时这样写
$game_actors[角色ID].skill_count[技能ID]=技能次数
获取时
p $game_actors[角色ID].skill_count[技能ID]

评分

参与人数 1+1 收起 理由
taeckle + 1 多谢了!

查看全部评分

回复 支持 反对

使用道具 举报

Lv5.捕梦者

梦石
0
星屑
33208
在线时间
10495 小时
注册时间
2009-3-15
帖子
4756
3
发表于 2019-10-23 11:06:50 | 显示全部楼层
如果是默认还好..
如果用了例如彩虹神剑那些连击脚本..
skill_effect
有多少连击就执行多少次..所以不建议在这里加技能使用次数..
如果是默认的就无所谓..

评分

参与人数 1+1 收起 理由
taeckle + 1 塞糖

查看全部评分

回复 支持 反对

使用道具 举报

Lv5.捕梦者

梦石
0
星屑
33208
在线时间
10495 小时
注册时间
2009-3-15
帖子
4756
4
发表于 2019-10-23 12:04:38 | 显示全部楼层
本帖最后由 soulsaga 于 2019-10-23 12:20 编辑

RUBY 代码复制
  1. class Game_Battler
  2. attr_accessor :skill_count                    # skill_count                    # 技能次数
  3. alias 技能次数初始化 initialize
  4. def initialize
  5. 技能次数初始化
  6. #@skill_count = {}
  7. end
  8. #--------------------------------------------------------------------------
  9.   # ● 返回技能次数哈希表
  10.   #--------------------------------------------------------------------------
  11.   def skill_count
  12.     return @skill_count || {}
  13.   end
  14. end
  15. #==============================================================================
  16. class Scene_Battle
  17.   #--------------------------------------------------------------------------
  18.   alias 技能结果 make_skill_action_result
  19.   def make_skill_action_result
  20.     技能结果
  21.     count = @active_battler.is_a?(Game_Actor) ? @active_battler.skill_usage_count(@skill.id) : 0
  22.     @active_battler.increase_skill_use_times(@skill.id) if @active_battler.is_a?(Game_Actor)
  23.     #p @active_battler.skill_usage_count(@skill.id)*10
  24.     #p $game_actors[1].skill_usage_count(57)
  25.   end
  26. end
  27. #==============================================================================
  28. class Game_Actor
  29.   attr_accessor :skill_use_data# 技能次数
  30.   #--------------------------------------------------------------------------
  31.   def skill_use_data
  32.     return @skill_use_data || {}
  33.   end
  34.   #--------------------------------------------------------------------------
  35.   def skill_usage_count(skill_id)
  36.     return skill_use_data[skill_id] || 0
  37.   end
  38.   #--------------------------------------------------------------------------
  39.   def increase_skill_use_times(skill_id, n=nil)
  40.     @skill_use_data ||= {}
  41.     count = skill_usage_count(skill_id)
  42.     @skill_use_data[skill_id] = [count + (n || 1), 0].max
  43.   end
  44. end
  45. #==============================================================================


我改了一下芯大的脚本..应该好使了吧..用群体攻击也只加1次

点评

现在你那里几点了?活动时间是多少至多少?早上班..晚上回家搞?  发表于 2019-10-23 12:25
要加减乘除需要修改一下脚本..已更新..你试试  发表于 2019-10-23 12:20
好吧。。我以为大神你把这个脚本更优化一步然后有所提升了  发表于 2019-10-23 12:17
芯大有说的吧..你为什么问我?你到底有没认真看帖..  发表于 2019-10-23 12:13
还有用这个脚本的话能直接加减乘除吗?  发表于 2019-10-23 12:12
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-5-2 23:30

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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