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

Project1

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

[已经解决] 关于装备强化脚本的一点问题

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
24 小时
注册时间
2012-9-6
帖子
45
跳转到指定楼层
1
发表于 2012-9-17 08:59:13 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在脚本的原设定中,强化成功后装备的附加四项主属性也会变化,如果原来装备没有附加属性也会附加上四条主属性。
我想修改为强化成功后装备原本有的属性被加强,不生成新的属性,原脚本和修改过的脚本如下,但是修改后的实际效果是强化成功后所有附加属性都没了。。。==求问
修改脚本:
   #---------------------------------------------------------------------
    # ● 生成新的數據
    #---------------------------------------------------------------------
    new_str = add_str + main_str if main_str > 0 # 新的str_plus
    new_str = main_str if main_str = 0
    new_dex = add_dex + main_dex if main_dex > 0 # 新的dex_plus
    new_dex = main_dex if main_dex = 0
    new_agi = add_agi + main_agi if main_agi > 0 # 新的agi_plus
    new_agi = main_agi if main_agi = 0
    new_int = add_int + main_int if main_int > 0 # 新的int_plus
    new_int = main_dex if main_int = 0
    new_pdef = add_pdef + main_pdef if main_pdef > 0 # 新的物防
    new_pdef = main_pdef if main_pdef = 0
    new_mdef = add_mdef + main_mdef if main_mdef > 0 # 新的魔防
    new_mdef = main_mdef if main_mdef = 0
    new_name = main_name
    new_des = main_des
    new_element = main_element
    new_atk = add_atk + main_atk if type == "weapon"


原脚本:
    #---------------------------------------------------------------------
    # ● 失敗/成功 的情况下,修正等級并取得提升/下降 值
    #---------------------------------------------------------------------
    case result
    when "failture"
      new_lv = lv - 1
      add_atk = -@minus["common"]["atk"]
      add_pdef = -@minus["common"]["pdef"]
      add_mdef = -@minus["common"]["mdef"]
      add_str = -@minus["common"]["str"]
      add_dex = -@minus["common"]["dex"]
      add_agi = -@minus["common"]["agi"]
      add_int = -@minus["common"]["int"]
      deduction = -@minus["common"]["deduction"] if @switches["deduct"]
    when "success"
      new_lv = lv + 1
      add_atk = @plus["common"]["atk"]
      add_pdef = @plus["common"]["pdef"]
      add_mdef = @plus["common"]["mdef"]
      add_str = @plus["common"]["str"]
      add_dex = @plus["common"]["dex"]
      add_agi = @plus["common"]["agi"]
      add_int = @plus["common"]["int"]
      deduction = @plus["common"]["deduction"] if @switches["deduct"]
    end
    #---------------------------------------------------------------------
    # ● 處理隨機折損
    #---------------------------------------------------------------------
    if @switches["deduct"]
      add_atk -= rand(deduction * 2)
      add_pdef -= rand(deduction)
      add_mdef -= rand(deduction)
      add_str -= rand(deduction)
      add_dex -= rand(deduction)
      add_agi -= rand(deduction)
      add_int -= rand(deduction)
    end
    #---------------------------------------------------------------------
    # ● 取得原生數據
    #---------------------------------------------------------------------
    case type
    when "weapon"
      equipment = $data_weapons[id]
      main_atk = equipment.atk
      main_element = equipment.element_set
      main_state = equipment.plus_state_set
    when "armor"
      equipment = $data_armors[id]
      main_state = equipment.guard_state_set # 防禦狀態組
      main_element = equipment.guard_element_set # 防禦屬性組
    end
    main_pdef = equipment.pdef
    main_mdef = equipment.mdef
    main_str = equipment.str_plus
    main_dex = equipment.dex_plus
    main_agi = equipment.agi_plus
    main_int = equipment.int_plus
    main_name = equipment.name
    main_des = equipment.description
    #---------------------------------------------------------------------
    # ● 生成新的數據
    #---------------------------------------------------------------------
    new_str = add_str + main_str# 新的str_plus
    new_dex = add_dex + main_dex # 新的dex_plus
    new_agi = add_agi + main_agi # 新的agi_plus
    new_int = add_int + main_int # 新的int_plus
    new_pdef = add_pdef + main_pdef # 新的物防
    new_mdef = add_mdef + main_mdef # 新的魔防
    new_name = main_name
    new_des = main_des
    new_element = main_element
    new_atk = add_atk + main_atk if type == "weapon"

Lv1.梦旅人

梦石
0
星屑
50
在线时间
24 小时
注册时间
2012-9-6
帖子
45
2
 楼主| 发表于 2012-9-20 10:42:25 | 只看该作者
求问啊求问啊。。已经沉了好几个帖子了。。。
回复

使用道具 举报

Lv3.寻梦者

昨日的黄昏

梦石
0
星屑
1005
在线时间
937 小时
注册时间
2006-11-5
帖子
4128

第2届短篇游戏比赛季军第3届短篇游戏大赛小游戏及其他组季军

3
发表于 2012-9-20 14:42:33 | 只看该作者
把if条件去了试试看
[url=http://weibo.com/2238291690?s=6uyXnP]
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
24 小时
注册时间
2012-9-6
帖子
45
4
 楼主| 发表于 2012-9-20 22:27:40 | 只看该作者
七夕小雨 发表于 2012-9-20 14:42
把if条件去了试试看

if 条件去了就是原来脚本。。。会出现一旦强化的话 没有属性的装备也会产生4个属性
回复

使用道具 举报

Lv3.寻梦者

昨日的黄昏

梦石
0
星屑
1005
在线时间
937 小时
注册时间
2006-11-5
帖子
4128

第2届短篇游戏比赛季军第3届短篇游戏大赛小游戏及其他组季军

5
发表于 2012-9-21 09:04:31 | 只看该作者
但是你得if条件好奇怪啊~~难道不应该是 new_agi = add_agi + main_agi if add_agi > 0 嘛?
为什么要写成new_str = add_str + main_str if main_str > 0 ?
[url=http://weibo.com/2238291690?s=6uyXnP]
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
24 小时
注册时间
2012-9-6
帖子
45
6
 楼主| 发表于 2012-9-22 12:27:56 | 只看该作者
七夕小雨 发表于 2012-9-21 09:04
但是你得if条件好奇怪啊~~难道不应该是 new_agi = add_agi + main_agi if add_agi > 0 嘛?
为什么要写成ne ...

因为如果去掉if的话 原来装备比如没有力量附加 根据没有if的算法也会产生力量属性。。。我就是想说如果一开始有main_str再加,没有就不加了。 产生的问题是main_str貌似不是歌数值?因为按照我写的脚本,实际效果是原来有的属性一旦强化全部都清零了。。。
回复

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
9280
在线时间
2504 小时
注册时间
2011-5-20
帖子
15389

开拓者

7
发表于 2012-9-22 15:50:11 | 只看该作者
七夕小雨 发表于 2012-9-21 09:04
但是你得if条件好奇怪啊~~难道不应该是 new_agi = add_agi + main_agi if add_agi > 0 嘛?
为什么要写成ne ...

他的意思是说这个if是判断有没有附加属性的···如果附加属性大于0装备就有附加属性,如果没有则是???,如果去掉判断就会乱套···
[img]http://service.t.sina.com.cn/widget/qmd/5339802982/c02e16bd/7.png
回复

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
3588
在线时间
3065 小时
注册时间
2011-11-17
帖子
980
8
发表于 2012-9-22 23:12:01 | 只看该作者
new_str = main_str if main_str = 0
问题在这里
1个等号是赋值 要表达等于0 要2个等号
new_str = main_str if main_str == 0 你改成这样试试看
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
24 小时
注册时间
2012-9-6
帖子
45
9
 楼主| 发表于 2012-9-23 08:15:30 | 只看该作者
yagami 发表于 2012-9-22 23:12
new_str = main_str if main_str = 0
问题在这里
1个等号是赋值 要表达等于0 要2个等号

成功啦!╮(╯▽╰)╭自学的三脚猫功夫果然漏洞颇多。。。
回复

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-12-31 07:00

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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