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

Project1

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

[原创发布] 【ISA】战斗临时天气 - Battle Temp Weather

[复制链接]

Lv2.观梦者

虚構歪曲

梦石
0
星屑
309
在线时间
1194 小时
注册时间
2010-12-18
帖子
3928

贵宾

跳转到指定楼层
1
发表于 2011-2-26 18:17:27 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
本帖最后由 忧雪の伤 于 2011-2-26 18:42 编辑
  1. #==============================================================================
  2. # ■ 【ISA】战斗临时天气 - Battle Temp Weather
  3. #------------------------------------------------------------------------------
  4. # - 2011.2.26
  5. #   初始化 忧雪の伤
  6. #______________________________________________________________________________
  7. #
  8. # 追加战斗临时天气以及对于技能的影响。
  9. #
  10. #==============================================================================
  11. #==============================================================================
  12. # ★ 设定部分 ★
  13. #==============================================================================
  14. module ISA
  15.   # 功能开关
  16.   BTW = true
  17.   
  18.   # 生成天气颜色
  19.   BTW_TONE = []
  20.   BTW_TONE[1] = Tone.new(-128, -128, -32)
  21.   BTW_TONE[2] = Tone.new(0, 0, 0)
  22.   BTW_TONE[3] = Tone.new(0, 0, 0)
  23.   BTW_TONE[4] = Tone.new(0, 0, 0)
  24.   
  25.   # 增效属性
  26.   BTW_ELE = []
  27.   BTW_ELE[1] = 17
  28.   # 不需要提高的设置为nil
  29.   BTW_ELE[2] = nil
  30.   BTW_ELE[3] = nil
  31.   BTW_ELE[4] = nil
  32.   
  33.   # 提高值
  34.   BTW_UP = []
  35.   # 基准100
  36.   BTW_UP[1] = 200
  37.   BTW_UP[2] = 100
  38.   BTW_UP[3] = 100
  39.   BTW_UP[4] = 100
  40.   
  41.   # 降效属性
  42.   BTW_ELE2 = []
  43.   BTW_ELE2[1] = 18
  44.   # 不需要降低的设置为nil
  45.   BTW_ELE2[2] = nil
  46.   BTW_ELE2[3] = nil
  47.   BTW_ELE2[4] = nil
  48.   
  49.   # 降低值
  50.   BTW_DOWN = []
  51.   # 基准100
  52.   BTW_DOWN[1] = 50
  53.   BTW_DOWN[2] = 100
  54.   BTW_DOWN[3] = 100
  55.   BTW_DOWN[4] = 100
  56.   
  57.   # 天气图片开关
  58.   BTW_PIC = true
  59.   # 天气图片名字
  60.   BTW_PIC_NAME = "WEATHER"
  61.   # 天气图片位置
  62.   BTW_PIC_GRA = "Pictures/"
  63.   # 天气图片X、Y坐标
  64.   BTW_PIC_X = 550
  65.   BTW_PIC_Y = 5
  66.   
  67.   # 改变天气指令
  68.   # => $game_temp.battle_weather = id
  69. end

  70. #★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

  71. # 注册【ISA】
  72. $ISA = {} if $ISA == nil
  73. $ISA["BTW"] = true

  74. #★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

  75. #==============================================================================
  76. # ★ 开关判定 ★
  77. #==============================================================================

  78. if ISA::BTW == true then
  79.   
  80. #==============================================================================
  81. # ■ Game_Temp
  82. #------------------------------------------------------------------------------
  83. #  在没有存档的情况下,处理临时数据的类。这个类的实例请参考
  84. # $game_temp 。
  85. #==============================================================================

  86. class Game_Temp
  87.   #--------------------------------------------------------------------------
  88.   # ● 定义实例变量
  89.   #--------------------------------------------------------------------------
  90.   attr_accessor :battle_weather                  # 战斗画面天气
  91.   #--------------------------------------------------------------------------
  92.   # ● 初始化对像
  93.   #--------------------------------------------------------------------------
  94.   alias old_initialize initialize
  95.   def initialize
  96.     # 声明别名
  97.     @battle_weather = 0
  98.     # 调用其他
  99.     old_initialize
  100.   end
  101. end

  102. #==============================================================================
  103. # ■ Game_Battler
  104. #------------------------------------------------------------------------------
  105. #  处理战斗者的类。这个类作为 Game_Actor 类与 Game_Enemy 类的
  106. # 超级类来使用。
  107. #==============================================================================

  108. class Game_Battler
  109.   #--------------------------------------------------------------------------
  110.   # ● 属性修正计算
  111.   #     element_set : 属性
  112.   #--------------------------------------------------------------------------
  113.   alias old_elements_correct elements_correct
  114.   def elements_correct(element_set)
  115.     # 调用旧值
  116.     n = old_elements_correct(element_set)
  117.     for i in element_set
  118.       # 读取属性
  119.       if ISA::BTW_ELE[$game_temp.battle_weather] != nil and i == ISA::BTW_ELE[$game_temp.battle_weather]
  120.         # 运算增幅
  121.         n *= ISA::BTW_UP[$game_temp.battle_weather] / 100
  122.       end
  123.       # 读取属性
  124.       if ISA::BTW_ELE2[$game_temp.battle_weather] != nil and i == ISA::BTW_ELE2[$game_temp.battle_weather]
  125.         # 运算增幅
  126.         n *= ISA::BTW_DOWN[$game_temp.battle_weather]
  127.         n /= 100
  128.       end
  129.     end
  130.     return n
  131.   end
  132. end  
  133.   
  134. #==============================================================================
  135. # ■ Scene_Battle
  136. #------------------------------------------------------------------------------
  137. #  处理战斗画面的类。
  138. #==============================================================================

  139. class Scene_Battle
  140.   #--------------------------------------------------------------------------
  141.   # ● 主处理
  142.   #--------------------------------------------------------------------------
  143.   alias old_main_third main
  144.   def main
  145.     # 声明别名
  146.     # 调用其他
  147.     old_main_third
  148.     @BTW_weather.dispose if @BTW_weather != nil
  149.     # 还原色调
  150.     $game_screen.start_tone_change(Tone.new(0, 0, 0), 20)
  151.   end
  152.   #--------------------------------------------------------------------------
  153.   # ● 刷新画面
  154.   #--------------------------------------------------------------------------
  155.   alias old_update_second update
  156.   def update
  157.     # 声明别名
  158.     case $game_temp.battle_weather
  159.     # 改变色调
  160.     when 0 # 普通
  161.       $game_screen.start_tone_change(Tone.new(0, 0, 0), 20)
  162.     else # 其他
  163.       $game_screen.start_tone_change(ISA::BTW_TONE[$game_temp.battle_weather], 20)
  164.     end
  165.     if ISA::BTW_PIC
  166.       # 显示图片
  167.       @BTW_weather = Sprite.new if @BTW_weather == nil
  168.       @BTW_weather.bitmap = Bitmap.new("Graphics/" + ISA::BTW_PIC_GRA + ISA::BTW_PIC_NAME + $game_temp.battle_weather.to_s)
  169.       @BTW_weather.x = ISA::BTW_PIC_X
  170.       @BTW_weather.y = ISA::BTW_PIC_Y
  171.     end
  172.     # 调用其他
  173.     old_update_second
  174.   end
  175. end

  176. end
复制代码

Lv2.观梦者

梦石
0
星屑
398
在线时间
972 小时
注册时间
2007-12-31
帖子
2137
2
发表于 2011-2-26 18:20:41 | 只看该作者
咕噜……加上了显示天气图片呢
回复 支持 反对

使用道具 举报

Lv3.寻梦者 (暗夜天使)

名侦探小柯

梦石
0
星屑
3263
在线时间
3616 小时
注册时间
2006-9-6
帖子
37399

开拓者贵宾第3届短篇游戏大赛主流游戏组亚军第5届短篇游戏比赛亚军

3
发表于 2011-2-27 03:53:19 | 只看该作者
没范例也就算了,连截图什么的都没么  = =
回复 支持 反对

使用道具 举报

Lv2.观梦者

虚構歪曲

梦石
0
星屑
309
在线时间
1194 小时
注册时间
2010-12-18
帖子
3928

贵宾

4
 楼主| 发表于 2011-2-27 11:29:35 | 只看该作者
越前リョーマ 发表于 2011-2-27 03:53
没范例也就算了,连截图什么的都没么  = =

喂喂,你要我怎么给截图?这个是根据你的设定来发挥效果的啊……

点评

截图和范例工程可以咱放出来= =|||  发表于 2011-2-27 13:54
回复 支持 反对

使用道具 举报

Lv3.寻梦者

酱油的

梦石
0
星屑
970
在线时间
2161 小时
注册时间
2007-12-22
帖子
3271

贵宾

5
发表于 2011-3-2 02:02:57 | 只看该作者
简单的脚本要啥截图pokemon没玩过吗?不过设置上的说明真的不足, 补点文字吧
不做頭像做簽名,看我囧冏有神(多謝山人有情提供 )
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
301
在线时间
573 小时
注册时间
2005-10-27
帖子
1164
6
发表于 2011-3-5 01:51:15 | 只看该作者
嗯……看不太懂怎么个用法啊……例如需要自己准备一些天气图片吗?

点评

需要。  发表于 2011-3-5 17:35
认真地猥琐,猥琐地认真
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-5-14 06:02

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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