スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

【カード2】対戦準備画面拡張

※このスクリプトは、ひきも記様で配布されているシンプルカードゲーム2の拡張スクリプトです。

通常デュエル前のデッキ選択時に表示されている敵デッキ情報を書き変えて、使用カードを隠したりすることができます。

競合を避けるために、このスクリプトにも「拡張カードアイコン」の機能を一部搭載しています。(通常デュエルの敵デッキウインドウのみ)
「拡張カードアイコン」と両方導入した場合は、DECKSELECT_ENEMYの設定は、スクリプト内で下にあるセクションの設定が適用されます。

サンプル画像

使い方

対戦準備画面拡張
スポンサーサイト

【カード2】対戦キャンセル

※このスクリプトは、ひきも記様で配布されているシンプルカードゲーム2の拡張スクリプトです。

テストプレイ時に通常デュエルをキャンセルできるようになります。
ランダムでデッキを作成する時に、どんな出方をするか確認したり、対戦テストしたいデッキになるまでやり直すのに使えます。

また、通常プレイ時はデュエルの前にイベントコマンドのスクリプトで
$game_temp.cancel_deckselect = true
と入力すると、次の1戦はキャンセル可能になります。

対戦キャンセル

キャンセルすると、対戦結果変数に0(引き分けと同じ値)を代入してマップに戻ります。
この時、引き分け処理に飛ぶので「引き分け!」などのメッセージが表示されてしまいます。
テストだけならともかく通常プレイ時にそうなると不都合なので、それを無くすために「文章の表示」を無視する機能を付けました。

デュエルをキャンセルすると「$game_temp.no_show_message」という一時変数に、設定項目で指定した変数(デフォルトでは10番)の値が代入されます。
$game_temp.no_show_messageの値が1以上なら「文章の表示」は無視され、値が減ります。
つまり、設定変数の値が2なら文章は以降2回無視されます。

また、引き分け時の処理の中に
条件分岐:スクリプト:$game_temp.no_show_message > 0
を入れれば、$game_temp.no_show_messageが1以上の時だけの分岐、つまり対戦キャンセル時の分岐を作れます。

設定例画像
※$game_temp内の値はセーブデータには保存されません。タイトル画面に戻ると初期値に戻ります。

【カード2】拡張カードアイコン

※このスクリプトは、ひきも記様で配布されているシンプルカードゲーム2の拡張スクリプトです。

アイテム一覧で表示する標準のアイコンとは別に
デュエル準備画面など、カード関連のシーン専用のアイコンを設定できます。
アイコン設定はカードアイテムのメモ欄になど、アイコンIDで指定してください。

サンプル画像

拡張アイコンを使用するウインドウは
・デッキ編集画面
 選択中デッキ 所持カード一覧
・模擬デュエル準備画面
 自分デッキ 相手デッキ
・通常デュエル準備画面
 自分デッキ 相手デッキ
の6種類です。
それぞれで拡張アイコンを表示するか、それとも標準アイコンのままか設定できます。

拡張カードアイコン

【カード2】0ダメージ引き分け

※このスクリプトは、ひきも記様で配布されているシンプルカードゲーム2の拡張スクリプトです。

互いに0ダメージが続いて勝負がつかなくなった時に、強制的に引き分けにして勝負を終了させます。

0ダメージ引き分け

ダメージが0ならカウントを1増やし、ダメージが1以上ならカウントを0に戻します。
このカウントが6以上になれば引き分けとします。つまり双方合わせて3ターンの間0ダメージが続けば引き分けです。
引き分けになるカウントの数値は73行目、強制引き分けのメッセージは76,77行目で変更できます。

【カード2】模擬デュエル拡張

※このスクリプトは、ひきも記様で配布されているシンプルカードゲーム2の拡張スクリプトです。

模擬デュエルのデッキ選択に入る時、最初に対戦相手になっているデッキは2番目のデッキ(デッキ2が対戦可能でも不能でもデッキ2になる)でしたが、「使用可能なデッキの中で1番上にあるもの」にします。

模擬デュエルのデッキ選択画面とデッキ編集画面を、LボタンかRボタン(QキーかWキー)を押すと相互に切り替わるようにできます(メニュー画面から開いた時のみ)。

模擬デュエルのデッキ選択画面で、対戦相手になっているデッキにアイコンを表示して分かりやすくできます。

デッキ選択画面とデッキ編集画面で、使用可能(3枚入っている)なデッキと使用不能なデッキのそれぞれに文字色を設定できます。

模擬デュエルのデッキ選択画面で、使用可能なデッキが無い場合のメッセージを設定できます。

サンプル画像

模擬デュエル拡張

模擬デュエルのデッキ選択画面で、Aボタン(Shiftキー)を押すと相手のデッキを選択できるのが目立たない(気がする)ので、メッセージ(59行目)で説明するといいかも。
「Shiftキーで対戦相手を変更できます」とか

【カード2】敵デッキ作成サポート1.01

※このスクリプトは、ひきも記様で配布されているシンプルカードゲーム2の拡張スクリプトです。

「負けるとカードを取られる」に機能を追加したものです。
これを導入する場合は↑のスクリプトは削除してください。

敵デッキ作成サポート1.01
機能2 使用例12/24

機能1 アンティ

・lose_snatch_card
 直前のデュエルでプレイヤーが使用したデッキの中からランダムで1枚失うコマンド
 コモンイベントで以下の3項目を設定し、負けた場合の分岐に入れてください。
・スクリプト
lose_snatch_card
・文章の表示
「\V[100]」を奪われた・・・
・変数の操作
[0100] = 0

・win_snatch_card
 直前のデュエルで敵が使用したデッキの中からランダムで1枚手に入れるコマンド
 コモンイベントで以下の3項目を設定し、勝った場合の分岐に入れてください。
・スクリプト
win_snatch_card
・文章の表示
「\V[100]」を奪った!
・変数の操作
[0100] = 0

・テスト補助
 テストプレイ時はこの2つのコマンドを使った場合、確認用の表示が出ます。

機能2 敵デッキ作成サポートコマンド
・$game_party.snatched_card_list
 lose_snatch_cardによって失ったことのあるカードが入っている
・having_card_list
 所持及び装備中のカードを返す 自分が持っているのと同じカードを使ってくるとか。
・list_sort(list)
 与えられた配列listから重複しているカードを取り除いて返す
・pick_up_rundom(list, n)
 与えられた配列listの中からランダムでn枚選んで返す
 nが3ならそのままデッキになる
・rarity_pick_up(list, rarity)
 与えられた配列listの中から指定したレアリティrarityのカードだけを選んで返す
 rarityは0から3までで配列の形で指定してください。
 コモンなら[0]、レアとレジェンドなら[2,3]
機能2については使用例に具体的な使い方と解説があるので見てください。

機能3 テストプレイ補助
テストプレイ時は、カードバトルでXボタン(Aキー)を押すと文章が高速で流れます。

【カード2】負けるとカードを取られる

※このスクリプトは、ひきも記様で配布されているシンプルカードゲーム2の拡張スクリプトです。

カードゲームで負けると、使用したデッキの中から1枚カードを奪われるようにできます。
負けるとカードを取られる シンプルカードゲーム2

使用法
スクリプトを導入したら、コモンイベントを作ってください。中身は

・スクリプト
n = rand(3)
item_id = $game_party.deck($use_deck)[n]
p "勝負したデッキの番号",$use_deck + 1,
  "デッキのカードのID",$game_party.deck($use_deck),
  "取られたカードのデッキ中での順番",n + 1,
  "取られたカードのアイテムID",item_id,
  "取られたカードの名前",$data_items[item_id].name
$game_variables[100]=$data_items[item_id].name
$game_party.lose_card($use_deck, n)
・文章の表示
「\V[100]」を奪われた・・・
・変数の操作
[0100] = 0

この3つです。このコモンイベントを負けた場合の分岐に突っ込んでやればOKです。
スクリプトコマンドのp "勝負したデッキの番号"からの5行は動作確認用の表示なので、いらなくなったら消してください。




↓解説
# ● アクティブデッキを設定する
def set_active_deck(index)
@active_deck = index
$use_deck = index
end
元からあったメソッドですが再定義で$use_deck = indexを追加しました。
これにより、ゲームに使ったデッキの番号を取得します。
# ● 装備カードの消去
def lose_card(index, equip_type)
@deck[index][equip_type] = 0
end
デッキ編集の時に使うchange_card(index, equip_type, item)を利用しました。カードスロットの指定した装備部位を「装備無し」にする機能しかありません。そこに装備していたアイテムは消えます。

・スクリプト
n = rand(3)
item_id = $game_party.deck($use_deck)[n]
p "勝負したデッキの番号",$use_deck + 1
p "デッキのカードのID",$game_party.deck($use_deck)
p "取られたカードのデッキ中での順番",n + 1
p "取られたカードのアイテムID",item_id
p "取られたカードの名前",$data_items[item_id].name
$game_variables[100]=$data_items[item_id].name
$game_party.lose_card($use_deck, n)
pはテスト用の表示です。
n = rand(3) nに0~2の数をランダムで代入します。3つのカードスロットのどれかを選ぶためです。
$game_variables[100]=$data_items[item_id].name 変数100番に、取られたカードのアイテム名(文字列)を代入します。
$game_party.lose_card($use_deck, n) $use_deck(使ったデッキ)のn(ランダムなカードスロット)を装備無しにします。そこにあったカードは消滅します。

・文章の表示 「\V[100]」を奪われた・・・
さっき変数に格納したカード名を表示します。

・変数の操作 変数ID100 = 0
デフォルトのデバッグ画面(F9キーで出てくるやつ)では、変数に文字列が入っているとエラーになります。それを防止するために数字を代入しておきます。
about
管理人:トリス

RPGツクールVX、VXAceのスクリプト素材を作ってます。
VXAceはATBやテストプレー高速化、VXはひきも記様のSRPG2拡張、アクション拡張 などがあります。

簡易利用規約
素材を使用した作品に著作権表記(このブログの名前)をお願いします。

作品公開時の利用報告は任意です。

サポート,リンク,共同制作などその他の詳しい規約はこちら
カテゴリ
リンク
ゲーム紹介
協力したゲームとか素材利用してくれたゲームとか

アスガル騎士団
アルカナリッター
 (VX)SRPG
 作品ページ  DLページ

チキチキボーンの骨
TimeLeaper -タイムリーパー-
 (VXAce)ATB
 作品ページ  DLページ
明日へのデュナミス
 (VXAce)ATB_XP
 作品ページ  DLページ


レンガの創作小屋
Dimension Warriors 間章
 (VXAce)
 作品ページ

なかぱー更新記
CRYSTALDestiny
 (VXAce)ATBサイドビュー
 DLページ
リンク用バナー

リンクフリーです。相互リンクは受け付けていません。
画像への直リンクは禁止です。
アクセスカウンター
リクエスト・質問掲示板
最新記事
月別アーカイブ
最新コメント
RSSリンクの表示
検索フォーム
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。