【RGSS3】逃走すると確率で所持金の10%を落とすスクリプト
Posted: 2020年8月08日(土) 21:35
RGSS3で敵から逃げているとお金を落としてしまうというペナルティを着けたいです。
どなたかよろしくお願いします。
どなたかよろしくお願いします。
コード: 全て選択
module BattleManager
#--------------------------------------------------------------------------
# ● 逃走の処理
#--------------------------------------------------------------------------
def self.process_escape
$game_message.add(sprintf(Vocab::EscapeStart, $game_party.name))
success = @preemptive ? true : (rand < @escape_ratio)
Sound.play_escape
if success
# 追加
n = $game_party.gold / 10 # 現在所持金の10%
$game_message.add("%s達は%d\\G落とした。", $game_party.name, n)
$game_party.lose_gold(n) # 所持金減少
# ここまで
process_abort
else
@escape_ratio += 0.1
$game_message.add('\.' + Vocab::EscapeFailure)
$game_party.clear_actions
end
wait_for_message
return success
end
end
コード: 全て選択
class << BattleManager
#--------------------------------------------------------------------------
# ● 逃走の処理
#--------------------------------------------------------------------------
alias tomo_escape_lose_gold_process_escape process_escape
def process_escape
success = tomo_escape_lose_gold_process_escape
$game_party.lose_gold($game_party.gold / 10) if success
success
end
end
コード: 全て選択
module BattleManager
#--------------------------------------------------------------------------
# ● 逃走の処理
#--------------------------------------------------------------------------
def self.process_escape
$game_message.add(sprintf(Vocab::EscapeStart, $game_party.name))
success = @preemptive ? true : (rand < @escape_ratio)
Sound.play_escape
if success
# 追加
if rand < 0.5
n = $game_party.gold / 10 # 現在所持金の10%
$game_message.add("%s達は%d\\G落とした。", $game_party.name, n)
$game_party.lose_gold(n) # 所持金減少
end
# ここまで
process_abort
else
@escape_ratio += 0.1
$game_message.add('\.' + Vocab::EscapeFailure)
$game_party.clear_actions
end
wait_for_message
return success
end
end
コード: 全て選択
class << BattleManager
#--------------------------------------------------------------------------
# ● 逃走の処理
#--------------------------------------------------------------------------
alias tomo_escape_lose_gold_process_escape process_escape
def process_escape
success = tomo_escape_lose_gold_process_escape
$game_party.lose_gold($game_party.gold / 10) if success && rand < 0.5
success
end
end
コード: 全て選択
$game_party.gold / 10
コード: 全て選択
$game_party.gold * 3 / 100
コード: 全て選択
($game_party.gold * 0.03).truncate