Project1

标题: 撤退可以加个选项吗? [打印本页]

作者: lirn    时间: 2012-5-29 21:50
标题: 撤退可以加个选项吗?
某人提出这个意见,应该是可以在脚本上修改吧,不过是新人的关系,还不懂脚本,我不知道怎么修改。
作者: asd11000    时间: 2012-5-29 21:53
加虾米选项啊。。说清楚点啊。。你是在“战斗”“撤退”那里加还是选了撤退以后蹦个对话框?
作者: s05s0039    时间: 2012-5-29 21:53
傳送門
作者: lirn    时间: 2012-5-29 21:59
本帖最后由 lirn 于 2012-5-29 22:56 编辑

对不起,我没说清楚。

就是说,选择撤退的时候,就马上撤退了。有些人说他手贱,总是不小心点到。

也就是说,当点到撤退的时候,弹出个对话框问是否确定撤退。
作者: Mic_洛洛    时间: 2012-5-29 23:19
我说怎么会呢?
默认选项不是战斗在上面,撤退在下面的么?
这都会点错~(鼠标触做得粗糙、、玩起来就是蛋疼的说~~)
话说每次都要问,不会很烦么?
加上正常情况下,在考虑是否撤退时,人家早就把你灭了的说~
作者: lirn    时间: 2012-5-30 08:38
其实,我个人倒不是太喜欢撤退要选择,耗时反而要长。

正常来说,撤退当然是要考虑,不然像淝水之战那样,一下就溃败了。
作者: 怕鼠的猫    时间: 2012-5-30 20:27
撤退里面可以加入“强行逃跑”,“交钱投降”,“威逼恐吓”,“诈降反攻”等等。设置不同的成功率和后果,也许能比较有意思。
作者: 铅笔描绘的思念    时间: 2012-6-7 19:43
本帖最后由 铅笔描绘的思念 于 2012-6-7 19:45 编辑

如果是加个窗口来确定是否逃跑的话。。。脚本送上
RUBY 代码复制
  1. #==============================================================================
  2. # ■ Window_ConfirmRun
  3. #------------------------------------------------------------------------------
  4. #  战斗界面中确定逃跑两个选项的窗口
  5. #==============================================================================
  6. class Window_ConfirmRun < Window_HorzCommand
  7.   #--------------------------------------------------------------------------
  8.   # ● オブジェクト初期化
  9.   #--------------------------------------------------------------------------
  10.   def initialize(yes, no)
  11.     @yes = yes
  12.     @no = no
  13.     super(544/2, 416/2) #
  14.     self.visible = false
  15.     self.active = false
  16.     @index = 0
  17.   end
  18.   #--------------------------------------------------------------------------
  19.   # ● 桁数の取得
  20.   #--------------------------------------------------------------------------
  21.   def col_max
  22.     return 2
  23.   end
  24.   #--------------------------------------------------------------------------
  25.   # ● コマンドリストの作成
  26.   #--------------------------------------------------------------------------
  27.   def make_command_list
  28.     add_command(@yes,   :yes)
  29.     add_command(@no,    :cancel)
  30.   end
  31.   #--------------------------------------------------------------------------
  32.   # ● 決定ボタンが押されたときの処理
  33.   #--------------------------------------------------------------------------
  34.   def process_ok
  35.     Input.update
  36.     call_ok_handler
  37.   end
  38.   #--------------------------------------------------------------------------
  39.   # ● 按下取消键时的处理
  40.   #--------------------------------------------------------------------------
  41.   def process_cancel
  42.     Input.update
  43.     call_cancel_handler
  44.   end
  45.   #--------------------------------------------------------------------------
  46.   # ● 启用窗口
  47.   #--------------------------------------------------------------------------
  48.   def activate
  49.     temp = self.y + self.height - Graphics.height
  50.     if temp > 0
  51.       self.y -= (temp + 12)
  52.     end
  53.     self.active = true
  54.     self
  55.   end
  56. end
  57.  
  58. class Scene_Battle < Scene_Base
  59.   #--------------------------------------------------------------------------
  60.   # ● 生成所有窗口
  61.   #--------------------------------------------------------------------------
  62.   def create_all_windows
  63.     create_message_window
  64.     create_scroll_text_window
  65.     create_log_window
  66.     create_status_window
  67.     create_info_viewport
  68.     create_party_command_window
  69.     create_actor_command_window
  70.     create_help_window
  71.     create_skill_window
  72.     create_item_window
  73.     create_actor_window
  74.     create_enemy_window
  75.  
  76.     create_confirm_window
  77.   end
  78.  
  79.   def create_confirm_window
  80.     @window_confirm = Window_ConfirmRun.new("逃跑", "我手贱")
  81.     @window_confirm.set_handler(:yes,     method(:do_escape))
  82.     @window_confirm.set_handler(:cancel, method(:do_cancel))
  83.     @window_confirm.hide
  84.   end
  85.   def do_escape
  86.     turn_start unless BattleManager.process_escape
  87.   end
  88.   def do_cancel
  89.  
  90.     Sound.play_cancel
  91.     @window_confirm.index  = 0
  92.     @window_confirm.visible = false
  93.     @window_confirm.deactivate
  94.  
  95.     @window_confirm.hide
  96.     @party_command_window.setup
  97.  
  98.   end
  99.    #--------------------------------------------------------------------------
  100.   # ● 指令“撤退”
  101.   #--------------------------------------------------------------------------
  102.   def command_escape
  103.     @window_confirm.show
  104.     @window_confirm.activate
  105.     @window_confirm.visible = true
  106.     @window_confirm.refresh
  107.  
  108.   end
  109. end





欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1