############################################################################ # # ユーザーvsゴーストバトルスクリプト「華和梨バトラー」Ver.2.00 # 前提 : 華和梨Phase 8.0.0以降を搭載 # 日時 : 2004/04/17 # 作者  : へーのき=つかさ(耳の人) # 改変 : デギン・ソド・ザビ(偽うにゅう) # 機能 : ユーザーとゴーストとのタイマンバトル。 # 特徴 : 簡単に台詞を書き換え可能。 #    : 各種行動の発動確率もそこそこ簡単に変更可能。 # 備考 : パブリックドメインとして自由に改変、再配布可 # : 改変、再配布の際、作者に連絡すると喜びます(笑) # Thanx : さとー、へーのき=つかさ(敬称略) # ############################################################################ # 更新履歴 ############################################################################ # #Ver.1.11→Ver.2.00 # 華和梨8対応版として改変 # #Ver.1.10→Ver.1.11 # エントリの名前を間違っていました(汗) # #Ver.1.00→Ver.1.10 # 書式が古いままだったのを修正(\h→\0など) # 通算対戦成績の記録を中止。1回対戦するごとに終了するよう変更。 # カウンター攻撃でとどめをさすとHPがマイナスになるのを修正。 # ############################################################################ # スクリプトの解説 ############################################################################ # #1.導入 # このファイルを組み込みたいゴーストのghost/masterフォルダに入れ、kawarirc.kis の #   =kis #   =end #の間のどこかに #   load KawariBattler8.txt; #を追加(ゴースト特有の辞書読み込み場所に追加することを推奨)。 # そして台詞をゴーストに合うよう書き換える。 # #2.バトルを仕掛ける方法 # 以下のいずれかにより戦闘が開始される。 # (1)COMMUNICATE BOXを開き、"KawariBattler"と入力。 # (2)任意の箇所に"${KawariBattler}"と記述。 # (3)メニューに"\q["ゴーストと対戦,KawariBattler"]"を追加(推奨)。 # #3.対戦方法 # バトルはターン制でユーザーとゴーストは交互に攻撃を行う。 # 選べる攻撃は"弱攻撃"、"中攻撃"、"強攻撃"の三つで、弱は命中率が高く、強は威力 #が高い。 # 攻撃を見切った(見切られた)場合はカウンターか防御をを選択。 # カウンターは相手の攻撃をそのまま返すが成功率は低く、防御は高い確率で攻撃を無 #効化する。 # どちらかのHPが0になるとバトルは終了。 # #4.華和梨7版と華和梨8版での違い(デギン・ソド・ザビ) # 基本スクリプトは殆ど改変していません。 # 一部のKISが7と8で違いがあるので、その部分を改変しています。 # 主に勝敗判定部分です。 # また、Ver.1.11からVer.2.00にするにあたり、スクリプトを一部現行仕様のものに変 #更して記述しています。 # なお、動作確認は華和梨Phase8.0.0+OpenKEEPS2.2.1にて実施しています。 # ############################################################################ # ダメージ数値定義 ############################################################################ # 弱ダメージ(1〜14) damage1 : 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 , 11 , 12 ,13 ,14 # 中ダメージ(11〜22) damage2 : 11 , 12 , 13 , 14 , 15 , 16 , 17 , 18 , 19 , 20 , 21 , 22 # 強ダメージ(21〜30) damage3 : 21 , 22 , 23 , 24 , 25 , 26 , 27 , 28 , 29 , 30 ############################################################################ # 台詞(全般) ############################################################################ # バトル開始 battle.start.sentence : \1バトルスタート!\w8\0さあいくよ! # ユーザー勝利 user.win.sentence : \1あなたの勝ちです。\w8\0くやし〜!\e # ゴースト勝利 ghost.win.sentence : \1%selfnameの勝ちです。\w8\0やったー!\e # ユーザーのターン開始(攻撃コマンド選択時) select.sentence : \0さあ来いっ! # ゴーストのターン開始 ghost.sentence : \0今度はこっちの番だよ! ############################################################################ # 台詞(ユーザーの行動) ############################################################################ # ユーザー弱攻撃 user.attack1.sentence : \1%usernameの弱攻撃。\w8\0むむっ、やったわね! # ユーザー中攻撃 user.attack2.sentence : \1%usernameの中攻撃。\w8\0痛っ! # ユーザー強攻撃 user.attack3.sentence : \1%usernameの強攻撃。\w8\0きゃぁぁぁぁ! # ユーザー弱カウンター攻撃 user.counter1.sentence : \1%usernameの弱カウンター攻撃。\w8\0むむっ、やったわね! # ユーザー中カウンター攻撃 user.counter2.sentence : \1%usernameの中カウンター攻撃。\w8\0痛っ! # ユーザー強カウンター攻撃 user.counter3.sentence : \1%usernameの強カウンター攻撃。\w8\0きゃぁぁぁぁ! # ユーザーカウンター失敗 user.misscounter.sentence : \1%usernameはカウンターに失敗。\w8\0隙だらけだよ! # ユーザー防御 user.defense.sentence : \1%usernameは%selfnameの攻撃をかわした。\w8\0ああっ、惜しい! # ユーザー防御失敗 user.missdefense.sentence : \1%usernameは防御に失敗した。\w8\0そんなガード、無駄だよ! # ユーザーが攻撃に反応 user.reaction.sentence : \1しかし%usernameは%selfnameの攻撃に反応していた。\w8\0!? ############################################################################ # 台詞(ゴーストの行動) ############################################################################ # ゴースト弱攻撃 ghost.attack1.sentence : \1%selfnameの弱攻撃。\w8\0それ、パンチ、パンチ、キック! # ゴースト中攻撃 ghost.attack2.sentence : \1%selfnameの中攻撃。\w8\0波動拳! # ゴースト強攻撃 ghost.attack3.sentence : \1%selfnameの強攻撃。\w8\0しんくぅ〜、波動拳! # ゴースト弱カウンター攻撃 ghost.counter1.sentence : \1%selfnameの弱カウンター攻撃。\w8\0それ、パンチ、パンチ、キック! # ゴースト中カウンター攻撃 ghost.counter2.sentence : \1%selfnameの中カウンター攻撃。\w8\0波動拳! # ゴースト強カウンター攻撃 ghost.counter3.sentence : \1%selfnameの強カウンター攻撃。\w8\0しんくぅ〜、波動拳! # ゴーストカウンター失敗 ghost.misscounter.sentence : \1%selfnameはカウンターに失敗。\w8\0しまった! # ゴースト防御 ghost.defense.sentence : \1%selfnameは%usernameの攻撃をかわした。\w8\0そんなの当たらないよ! # ゴースト防御失敗 ghost.missdefense.sentence : \1%selfnameは防御に失敗。\w8\0避けたと思ったのに〜! # ゴーストが攻撃に反応 ghost.reaction.sentence : \1しかし%selfnameは%usernameの攻撃に反応していた。\w8\0見切った! # ↓華和梨にあまり詳しくない人はこれ以降を弄らない方が吉。 ############################################################################ # 初期設定 ############################################################################ #COMMUNICATE BOX場合による初期化 ["KawariBattler"] : \t$(set user.HP 100)$(set ghost.HP 100)${battle.start.sentence}\x\c${user.turn} #任意の箇所に入れた場合による初期化 KawariBattler : \t$(set user.HP 100)$(set ghost.HP 100)${battle.start.sentence}\x\c${user.turn} #選択肢に入れた場合による初期化 Select.KawariBattler : \t$(set user.HP 100)$(set ghost.HP 100)${battle.start.sentence}\x\c${user.turn} ############################################################################ # ユーザーのターン ############################################################################ # ユーザーのコマンド選択 user.turn : \t${select.sentence}\n\n\0\q[">弱攻撃,attack1"]\n\q[">中攻撃,attack2"]\n\q[">強攻撃,attack3"]\e # 弱攻撃 Select.attack1 : ${u.sa1} , ${u.sa1} , ${u.sa1} , ${u.sa1} , ${u.ma1} u.sa1 : \t\1${user.attack1.sentence}\x\c\1%selfnameに${damage1}のダメージを与えた!$(dec ghost.HP ${1})\x\c${user.each.HP} u.ma1 : \t${ghost.reaction.sentence}\x\c${ghost.reaction1} # ゴーストが弱攻撃に反応 ghost.reaction1 : ${ghost.counter1} , ${ghost.defense1} # ゴーストの弱カウンター ghost.counter1 : ${g.sc1} , ${g.mc1} g.sc1 : \t\1${ghost.counter1.sentence}\x\c\1%usernameに${damage1}のダメージを与えた!$(dec user.HP ${1})\x\c${user.each.HP} g.mc1 : \t\1${ghost.misscounter.sentence}\x\c\1%selfnameに${damage1}のダメージを与えた!$(dec ghost.HP ${1})\x\c${user.each.HP} # ゴーストが弱攻撃を防御 ghost.defense1 : ${g.sd1} , ${g.sd1} , ${g.sd1} , ${g.sd1} , ${g.md1} g.sd1 : \t${ghost.defense.sentence}\x\c${user.each.HP} g.md1 : \t${ghost.missdefense.sentence}\x\c\1%selfnameに${damage1}のダメージを与えた!$(dec ghost.HP ${1})\x\c${user.each.HP} # 中攻撃 Select.attack2 : ${u.sa2} , ${u.sa2} , ${u.ma2} u.sa2 : \t\1${user.attack2.sentence}\x\c\1%selfnameに${damage2}のダメージを与えた!$(dec ghost.HP ${1})\x\c${user.each.HP} u.ma2 : \t${ghost.reaction.sentence}\x\c${ghost.reaction2} # ゴーストが中攻撃に反応 ghost.reaction2 : ${ghost.counter2} , ${ghost.defense2} # ゴーストの中カウンター ghost.counter2 : ${g.sc2} , ${g.mc2} g.sc2 : \t\1${ghost.counter2.sentence}\x\c\1%usernameに${damage2}のダメージを与えた!$(dec user.HP ${1})\x\c${user.each.HP} g.mc2 : \t\1${ghost.misscounter.sentence}\x\c\1%selfnameに${damage2}のダメージを与えた!$(dec ghost.HP ${1})\x\c${user.each.HP} # ゴーストが中攻撃を防御 ghost.defense2 : ${g.sd2} , ${g.sd2} , ${g.sd2} , ${g.sd2} , ${g.md2} g.sd2 : \t${ghost.defense.sentence}\x\c${user.each.HP} g.md2 : \t${ghost.missdefense.sentence}\x\c\1%selfnameに${damage2}のダメージを与えた!$(dec ghost.HP ${1})\x\c${user.each.HP} # 強攻撃 Select.attack3 : ${u.sa3} , ${u.ma3} u.sa3 : \t\1${user.attack3.sentence}\x\c\1%selfnameに${damage3}のダメージを与えた!$(dec ghost.HP ${1})\x\c${user.each.HP} u.ma3 : \t${ghost.reaction.sentence}\x\c${ghost.reaction3} # ゴーストが強攻撃に反応 ghost.reaction3 : ${ghost.counter3} , ${ghost.defense3} # ゴーストの強カウンター ghost.counter3 : ${g.sc3} , ${g.mc3} g.sc3 : \t\1${ghost.counter3.sentence}\x\c\1%usernameに${damage3}のダメージを与えた!$(dec user.HP ${1})\x\c${user.each.HP} g.mc3 : \t\1${ghost.misscounter.sentence}\x\c\1%selfnameに${damage3}のダメージを与えた!$(dec ghost.HP ${1})\x\c${user.each.HP} # ゴーストが強攻撃を防御 ghost.defense3 : ${g.sd3} , ${g.sd3} , ${g.sd3} , ${g.sd3} , ${g.md3} g.sd3 : \t${ghost.defense.sentence}\x\c${user.each.HP} g.md3 : \t${ghost.missdefense.sentence}\x\c\1%selfnameに${damage3}のダメージを与えた!$(dec ghost.HP ${1})\x\c${user.each.HP} # 勝敗判定し、決着がついていなければ双方のHPを表示して戦闘続行 user.each.HP : \t${user.win.lose}${ghost.win.lose}\1%usernameのHP:${user.HP}/100\n%selfnameのHP:${ghost.HP}/100\x\c${ghost.turn} ############################################################################ # ゴーストのターン ############################################################################ ghost.turn : \t\0${ghost.sentence}\x\c${ghost.action} ghost.action : ${ghost.attack1} , ${ghost.attack2} , ${ghost.attack3} # 弱攻撃 ghost.attack1 : ${g.sa1} , ${g.sa1} , ${g.sa1} , ${g.sa1} ,${g.ma1} g.sa1 : \t${ghost.attack1.sentence}\x\c\1%usernameに${damage1}のダメージを与えた!$(dec user.HP ${1})\x\c${ghost.each.HP} g.ma1 : \t${ghost.attack1.sentence}\x\c${user.reaction.sentence}${user.reaction1} # ユーザーが弱攻撃に反応 user.reaction1 : \t${reaction.sentence}\n\n\q[">カウンター,counter1"]\n\q[">防御,defense1"]\e # ユーザーの弱カウンター Select.counter1 : ${u.sc1} , ${u.mc1} u.sc1 : \t\1${user.counter1.sentence}\x\c\1%selfnameに${damage1}のダメージを与えた!$(dec ghost.HP ${1})\x\c${ghost.each.HP} u.mc1 : \t\1${user.misscounter.sentence}\x\c\1%usernameに${damage1}のダメージを与えた!$(dec user.HP ${1})\x\c${ghost.each.HP} # ユーザーが弱攻撃を防御 Select.defense1 : ${u.sd1} , ${u.sd1} , ${u.sd1} , ${u.sd1} , ${u.md1} u.sd1 : \t${user.defense.sentence}\x\c${ghost.each.HP} u.md1 : \t${user.missdefense.sentence}\x\c\1%usernameに${damage1}のダメージを与えた!$(dec user.HP ${1})\x\c${ghost.each.HP} # 中攻撃 ghost.attack2 : ${g.sa2} , ${g.sa2} , ${g.ma2} g.sa2 : \t${ghost.attack2.sentence}\x\c\1%usernameに${damage2}のダメージを与えた!$(dec user.HP ${1})\x\c${ghost.each.HP} g.ma2 : \t${ghost.attack2.sentence}\x\c${user.reaction.sentence}${user.reaction2} # ユーザーが中攻撃に反応 user.reaction2 : \t${reaction.sentence}\n\n\q[">カウンター,counter2"]\n\q[">防御,defense2"]\e # ユーザーの中カウンター Select.counter2 : ${u.sc2} , ${u.mc2} u.sc2 : \t\1${user.counter2.sentence}\x\c\1%selfnameに${damage2}のダメージを与えた!$(dec ghost.HP ${1})\x\c${ghost.each.HP} u.mc2 : \t\1${user.misscounter.sentence}\x\c\1%usernameに${damage2}のダメージを与えた!$(dec user.HP ${1})\x\c${ghost.each.HP} # ユーザーが中攻撃を防御 Select.defense2 : ${u.sd2} , ${u.sd2} , ${u.sd2} , ${u.sd2} , ${u.md2} u.sd2 : \t${user.defense.sentence}\x\c${ghost.each.HP} u.md2 : \t${user.missdefense.sentence}\x\c\1%usernameに${damage2}のダメージを与えた!$(dec user.HP ${1})\x\c${ghost.each.HP} # 強攻撃 ghost.attack3 : ${g.sa3} , ${g.ma3} g.sa3 : \t${ghost.attack3.sentence}\x\c\1%usernameに${damage3}のダメージを与えた!$(dec user.HP ${1})\x\c${ghost.each.HP} g.ma3 : \t${ghost.attack3.sentence}\x\c${user.reaction.sentence}${user.reaction3} # ユーザーが強攻撃に反応 user.reaction3 : \t${reaction.sentence}\n\n\q[">カウンター,counter3"]\n\q[">防御,defense3"]\e # ユーザーの強カウンター Select.counter3 : ${u.sc3} , ${u.mc3} u.sc3 : \t\1${user.counter3.sentence}\x\c\1%selfnameに${damage3}のダメージを与えた!$(dec ghost.HP ${1})\x\c${ghost.each.HP} u.mc3 : \t\1${user.misscounter.sentence}\x\c\1%usernameに${damage3}のダメージを与えた!$(dec user.HP ${1})\x\c${ghost.each.HP} # ユーザーが強攻撃を防御 Select.defense3 : ${u.sd3} , ${u.sd3} , ${u.sd3} , ${u.sd3} , ${u.md3} u.sd3 : \t${user.defense.sentence}\x\c${ghost.each.HP} u.md3 : \t${user.missdefense.sentence}\x\c\1%usernameに${damage3}のダメージを与えた!$(dec user.HP ${1})\x\c${ghost.each.HP} # 勝敗判定し、決着がついていなければ双方のHPを表示して戦闘続行 ghost.each.HP : \t${user.win.lose}${ghost.win.lose}\1%usernameのHP:${user.HP}/100\n%selfnameのHP:${ghost.HP}/100\x\c${user.turn} ############################################################################ # 勝敗 ############################################################################ # 勝敗判定 user.win.lose : $(if $[ ${user.HP} <= 0 ] ${ghost.win.sentence}) ghost.win.lose : $(if $[ ${ghost.HP} <= 0 ] ${user.win.sentence}) ############################################################################ # えんいー ############################################################################