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

Project1

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

[已经过期] 好久没做游戏了,上来请教个问题~~~

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
138 小时
注册时间
2012-7-2
帖子
173
跳转到指定楼层
1
发表于 2016-9-22 08:32:32 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
我想做个类似于商人的职业,只要有该职业的人在队伍里,买东西都能半价。
或者做个类似于降价的被动技能,只要有这个技能,买东西都半价。
请问这个该怎么解决。
谢谢大家~~~~
我只属于我一个人的世界~~~

Lv4.逐梦者

梦石
5
星屑
3038
在线时间
612 小时
注册时间
2012-11-12
帖子
482

开拓者

2
发表于 2016-9-22 08:49:10 | 只看该作者
购买之前进行角色判断然后修改商品价格
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
138 小时
注册时间
2012-7-2
帖子
173
3
 楼主| 发表于 2016-9-22 09:27:35 | 只看该作者
鸟猫 发表于 2016-9-22 08:49
购买之前进行角色判断然后修改商品价格

可是我看了一下好像没有修改价格的选项

点评

脚本编辑器里面  发表于 2016-9-25 10:07
我只属于我一个人的世界~~~
回复 支持 反对

使用道具 举报

Lv3.寻梦者

双子人

梦石
0
星屑
3185
在线时间
3618 小时
注册时间
2009-4-4
帖子
4154

开拓者

4
发表于 2016-9-22 13:25:17 | 只看该作者
本帖最后由 hys111111 于 2016-9-22 13:57 编辑

先加入这个判断队伍里是否存在该职业的ID
  1. class Game_Party
  2.   
  3.   def have_actor_class?(id) # 商人职业ID
  4.     return false if @actors.size == 0
  5.     for actor in @actors
  6.       return true if actor.class_id == id
  7.     end
  8.     return false
  9.   end
  10.   
  11. end
复制代码


然后在根据队伍中是否存在职业ID来修改价格
  1. class Scene_Shop
  2.   
  3.   alias discount_update update
  4.   def update
  5.     if @_old_data == nil
  6.       @_old_data = [$data_items.clone,$data_weapons.clone,$data_armors.clone]
  7.     end
  8.     if $game_party.have_actor_class?(职业ID) and @buy_window.active # 职业ID在这里设置
  9.       for item in $data_items
  10.         item.price = (@_old_data[0][item.id].price / 2).to_i
  11.       end
  12.       for item in $data_weapons
  13.         item.price = (@_old_data[1][item.id].price / 2).to_i
  14.       end
  15.       for item in $data_items
  16.         item.price = (@_old_data[2][item.id].price / 2).to_i
  17.       end
  18.     else
  19.       for item in $data_items
  20.         item.price = @_old_data[0][item.id].price
  21.       end
  22.       for item in $data_weapons
  23.         item.price = @_old_data[1][item.id].price
  24.       en
  25.       for item in $data_items
  26.         item.price = @_old_data[2][item.id].price
  27.       end
  28.     end
  29.     discount_update
  30.   end
  31.   
  32. end
复制代码

点评

或许还有更严重的问题。所以还是测试一下吧。  发表于 2016-9-23 08:52
怀疑这代码有问题。如果队伍中存在“商人”,那么第二次进商店的时候物品价格会/4,第三次会/8  发表于 2016-9-23 08:49
回复 支持 1 反对 0

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
138 小时
注册时间
2012-7-2
帖子
173
5
 楼主| 发表于 2016-9-22 15:00:34 | 只看该作者
hys111111 发表于 2016-9-22 13:25
先加入这个判断队伍里是否存在该职业的ID

好厉害!
这两个脚本要放哪?放脚本编辑器里,还是放商店NPC事件上?
我只属于我一个人的世界~~~
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-27 04:28

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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