Project1

标题: 如何设置一个脚本的开关 [打印本页]

作者: 谢拉卡姗娜    时间: 2008-4-14 05:09
标题: 如何设置一个脚本的开关
{/fd}
意思就是,比如这个的脚本是“按键加速”功能

我想设置某个开关为OFF时加速功能无效

为ON时有效,注意是OFF时无效ON时有效……

不知道怎么能够实现的呢? [LINE]1,#dddddd[/LINE]版务信息:本贴由楼主自主结贴~
作者: 9244579    时间: 2008-4-14 05:14
把脚本发上来!
只要在加速的那个地方脚本前一行写上
if $game_switches[X] == true

xxxx
xxx

end
作者: 谢拉卡姗娜    时间: 2008-4-14 05:15
  1. #==============================================================================
  2. module XRXS_Dash
  3. #
  4. # 按下加速键之后的速度増加量
  5. #
  6. PLUSPEED = 0.6
  7. #
  8. # 行走加速的按键
  9. #
  10. BUTTON = Input::C
  11. end
  12. #==============================================================================
  13. # ■ Game_Player
  14. #==============================================================================
  15. class Game_Player < Game_Character
  16. #--------------------------------------------------------------------------
  17. # ● フレーム更新
  18. #--------------------------------------------------------------------------
  19. alias xrxs25_update update
  20. def update
  21.    # 例外補正
  22.    if @move_speed_arcadia == nil
  23.      @move_speed_arcadia = @move_speed
  24.    end
  25.    # 移動中、イベント実行中、移動ルート強制中、
  26.    # メッセージウィンドウ表示中、
  27.    # ダッシュボタン挿下中、のいずれでもない場合
  28.    unless moving? or $game_system.map_interpreter.running? or
  29.           @move_route_forcing or $game_temp.message_window_showing
  30.      # 速度の変更
  31.      if Input.press?(XRXS_Dash::BUTTON)
  32.        @move_speed = @move_speed_arcadia + XRXS_Dash::PLUSPEED
  33.      else
  34.        @move_speed = @move_speed_arcadia
  35.      end
  36.    end
  37.    # 呼び戻す
  38.    xrxs25_update
  39. end
  40. #--------------------------------------------------------------------------
  41. # ○ 移動タイプ : カスタム [オーバーライド]
  42. #--------------------------------------------------------------------------
  43. def move_type_custom
  44.    # 例外補正
  45.    if @move_speed_arcadia == nil
  46.      @move_speed_arcadia = @move_speed
  47.    end
  48.    # 標準速度に戻す
  49.    @move_speed = @move_speed_arcadia
  50.    # 呼び戻す
  51.    super
  52.    # 速度の保存
  53.    @move_speed_arcadia = @move_speed
  54. end
  55. end
复制代码


脚本以上~ 具体如何改?
作者: hitlerson    时间: 2008-4-14 05:16
$game_switches   ← 调用开关的代码

unless $game_switches  #除非开关打开
功能有效
end
功能无效

或者
if  $game_switches
功能有效
else
功能无效
end
作者: joshua    时间: 2008-4-14 05:16
if Input.press?(XRXS_Dash::BUTTON)

这行后面加,过去弄过
作者: 3535    时间: 2008-4-14 05:17
module XRXS_Dash
#
# 按下加速键之后的速度増加量
#
if $game_switches[99] == true
PLUSPEED = 0.6
else
PLUSPEED = 0
end
作者: 谢拉卡姗娜    时间: 2008-4-14 05:19
{/gg}这个……我是脚本盲……到底是在哪一行加什么……比如是99号开关……

这个脚本是从站上找的……
作者: 3535    时间: 2008-4-14 05:20
以下引用谢拉卡姗娜于2008-4-13 21:19:46的发言:

这个……我是脚本盲……到底是在哪一行加什么……比如是99号开关……

这个脚本是从站上找的……

请看上面
作者: joshua    时间: 2008-4-14 05:23
module XRXS_Dash
#
# 按下加速键之后的速度増加量
#
if $game_switches[99] == true
PLUSPEED = 0.6
else
PLUSPEED = 0
end
#
# 行走加速的按键
#
BUTTON = Input::C
end

#==============================================================================
# ■ Game_Player
#==============================================================================
class Game_Player < Game_Character
#--------------------------------------------------------------------------
# ● フレーム更新
#--------------------------------------------------------------------------
alias xrxs25_update update
def update
  # 例外補正
  if @move_speed_arcadia == nil
    @move_speed_arcadia = @move_speed
  end
  # 移動中、イベント実行中、移動ルート強制中、
  # メッセージウィンドウ表示中、
  # ダッシュボタン挿下中、のいずれでもない場合
  unless moving? or $game_system.map_interpreter.running? or
         @move_route_forcing or $game_temp.message_window_showing
    # 速度の変更
    if Input.press?(XRXS_Dash::BUTTON)
      @move_speed = @move_speed_arcadia + XRXS_Dash::PLUSPEED
    else
      @move_speed = @move_speed_arcadia
    end
  end
  # 呼び戻す
  xrxs25_update
end
#--------------------------------------------------------------------------
# ○ 移動タイプ : カスタム [オーバーライド]
#--------------------------------------------------------------------------
def move_type_custom
  # 例外補正
  if @move_speed_arcadia == nil
    @move_speed_arcadia = @move_speed
  end
  # 標準速度に戻す
  @move_speed = @move_speed_arcadia
  # 呼び戻す
  super
  # 速度の保存
  @move_speed_arcadia = @move_speed
end
end



完全改好版
作者: 谢拉卡姗娜    时间: 2008-4-14 05:23
…………是不是替换掉
  1. module XRXS_Dash
  2. #
  3. # 按下加速键之后的速度増加量
  4. #
  5. PLUSPEED = 0.6
  6. #
复制代码


我替换后出错了……
作者: 9244579    时间: 2008-4-14 05:24
  1. #==============================================================================
  2. module XRXS_Dash
  3. #
  4. # 按下加速键之后的速度増加量
  5. #
  6. PLUSPEED = 0.6
  7. #
  8. # 行走加速的按键
  9. #
  10. BUTTON = Input::C
  11. #开关号码
  12. $开关= 1
  13. end
  14. #==============================================================================
  15. # ■ Game_Player
  16. #==============================================================================
  17. class Game_Player < Game_Character
  18. #--------------------------------------------------------------------------
  19. # ● フレーム更新
  20. #--------------------------------------------------------------------------
  21. alias xrxs25_update update
  22. def update
  23.   # 例外補正
  24.   if @move_speed_arcadia == nil
  25.     @move_speed_arcadia = @move_speed
  26.   end
  27.   # 移動中、イベント実行中、移動ルート強制中、
  28.   # メッセージウィンドウ表示中、
  29.   # ダッシュボタン挿下中、のいずれでもない場合
  30.   unless moving? or $game_system.map_interpreter.running? or
  31.          @move_route_forcing or $game_temp.message_window_showing
  32.     # 速度の変更
  33.     if $game_switches[$开关] == true
  34.     if Input.press?(XRXS_Dash::BUTTON)
  35.       @move_speed = @move_speed_arcadia + XRXS_Dash::PLUSPEED
  36.     else
  37.       @move_speed = @move_speed_arcadia
  38.     end
  39.   end
  40.   end
  41.   # 呼び戻す
  42.   xrxs25_update
  43. end
  44. #--------------------------------------------------------------------------
  45. # ○ 移動タイプ : カスタム [オーバーライド]
  46. #--------------------------------------------------------------------------
  47. def move_type_custom
  48.   # 例外補正
  49.   if @move_speed_arcadia == nil
  50.     @move_speed_arcadia = @move_speed
  51.   end
  52.   # 標準速度に戻す
  53.   @move_speed = @move_speed_arcadia
  54.   # 呼び戻す
  55.   super
  56.   # 速度の保存
  57.   @move_speed_arcadia = @move_speed
  58. end
  59. end


复制代码

直接帮你改下就是了
当开关一号打开后就可以加速,自己可以开开关号码

作者: link006007    时间: 2008-4-14 05:25
以下引用谢拉卡姗娜于2008-4-13 21:15:16的发言:


   本帖相关代码如下:
#==============================================================================
module XRXS_Dash
#
# 按下加速键之后的速度増加量
#
PLUSPEED = 0.6
#
# 行走加速的按键
#
BUTTON = Input::C
end
#==============================================================================
# ■ Game_Player
#==============================================================================
class Game_Player < Game_Character
#--------------------------------------------------------------------------
# ● フレーム更新
#--------------------------------------------------------------------------
alias xrxs25_update update
def update
  # 例外補正
  if @move_speed_arcadia == nil
    @move_speed_arcadia = @move_speed
  end
  # 移動中、イベント実行中、移動ルート強制中、
  # メッセージウィンドウ表示中、
  # ダッシュボタン挿下中、のいずれでもない場合
  unless moving? or $game_system.map_interpreter.running? or
         @move_route_forcing or $game_temp.message_window_showing
    # 速度の変更
#===============================================================================
    if Input.press?(XRXS_Dash::BUTTON) and (true == $game_switches[99])
#===============================================================================
      @move_speed = @move_speed_arcadia + XRXS_Dash::PLUSPEED
    else
      @move_speed = @move_speed_arcadia
    end
  end
  # 呼び戻す
  xrxs25_update
end
#--------------------------------------------------------------------------
# ○ 移動タイプ : カスタム [オーバーライド]
#--------------------------------------------------------------------------
def move_type_custom
  # 例外補正
  if @move_speed_arcadia == nil
    @move_speed_arcadia = @move_speed
  end
  # 標準速度に戻す
  @move_speed = @move_speed_arcadia
  # 呼び戻す
  super
  # 速度の保存
  @move_speed_arcadia = @move_speed
end
end


脚本以上~ 具体如何改?


作者: 谢拉卡姗娜    时间: 2008-4-14 05:26
还是错误……说最后一行SyntaError
作者: 9244579    时间: 2008-4-14 05:27
汗,我的没错,我测试过了
Ps:
  1. #==============================================================================
  2. module XRXS_Dash
  3. #
  4. # 按下加速键之后的速度増加量
  5. #
  6. PLUSPEED = 0.6
  7. #
  8. # 行走加速的按键
  9. #
  10. BUTTON = Input::C
  11. #开关号码
  12. $开关= 1
  13. end
  14. #==============================================================================
  15. # ■ Game_Player
  16. #==============================================================================
  17. class Game_Player < Game_Character
  18. #--------------------------------------------------------------------------
  19. # ● フレーム更新
  20. #--------------------------------------------------------------------------
  21. alias xrxs25_update update
  22. def update
  23.   # 例外補正
  24.   if @move_speed_arcadia == nil
  25.     @move_speed_arcadia = @move_speed
  26.   end
  27.   # 移動中、イベント実行中、移動ルート強制中、
  28.   # メッセージウィンドウ表示中、
  29.   # ダッシュボタン挿下中、のいずれでもない場合
  30.   unless moving? or $game_system.map_interpreter.running? or
  31.          @move_route_forcing or $game_temp.message_window_showing
  32.     # 速度の変更
  33.     if $game_switches[$开关] == true
  34.     if Input.press?(XRXS_Dash::BUTTON)
  35.       @move_speed = @move_speed_arcadia + XRXS_Dash::PLUSPEED
  36.     else
  37.       @move_speed = @move_speed_arcadia
  38.     end
  39.   end
  40.   end
  41.   # 呼び戻す
  42.   xrxs25_update
  43. end
  44. #--------------------------------------------------------------------------
  45. # ○ 移動タイプ : カスタム [オーバーライド]
  46. #--------------------------------------------------------------------------
  47. def move_type_custom
  48.   # 例外補正
  49.   if @move_speed_arcadia == nil
  50.     @move_speed_arcadia = @move_speed
  51.   end
  52.   # 標準速度に戻す
  53.   @move_speed = @move_speed_arcadia
  54.   # 呼び戻す
  55.   super
  56.   # 速度の保存
  57.   @move_speed_arcadia = @move_speed
  58. end
  59. end


复制代码

直接帮你改下就是了
当开关一号打开后就可以加速,自己可以开开关号码
[LINE]1,#dddddd[/LINE]系统信息:本贴由楼主认可为正确答案,66RPG感谢您的热情解答~
作者: 谢拉卡姗娜    时间: 2008-4-14 05:29
不好意思,是多复制了一行文字………

现在已经解决了,多谢大家热心帮忙了~

分只能赏一个人无奈了~~




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