SRC質問掲示板Mk2
(現在 過去ログ119 を表示中)
HOME
HELP
新規作成
新着記事
トピック表示
検索
新着情報
過去ログ
[
最新記事及び返信フォームをトピックトップへ
]
[ トピック内全6記事(1-6 表示) ] <<
0
>>
■20953
/ inTopicNo.1)
技のカウント
▼
■
□投稿者/ 夜叉
-(2008/05/07(Wed) 09:34:44)
[ID:ieYK4nIL]
技を使うごとにカウントしていき、その回数が50回になったときに新しい技が
使えるようになるというのを作りたいのですがどのようにすれば良いのでしょうか?
初級剣技, 1000, 1, 1, +20, -, 10, -, AAAA, -10, 武
↑の回数が50回を満たすと
初級奥義, 1000, 1, 1, +20, -, 10, -, AAAA, -10, 武
↑がEnableされるようにしたいのです。
どうかよろしくお願いします。
引用返信
/
返信
削除キー/
編集
削除
■20954
/ inTopicNo.2)
Re[1]: 技のカウント
▲
▼
■
□投稿者/ Mr
@
-(2008/05/08(Thu) 13:34:24)
[ID:msSebhOJ]
用語はヘルプファイルで見ていただくとして。
「○○の使用回数」などの条件は全てフラグです。(よくゲームでフラグが立った、などと表現しますね)
フラグには「変数」を使います。
ステージを越えて扱うフラグは「グローバル変数」を使います。
今回の場合は 初級剣技使用回数 という変数を作り、それが50になったら 初級奥義 を使えるようにすれば良いでしょう。
回数をカウントするタイミングですが、
戦闘に関するタイミングは「攻撃」「攻撃後」「撃破」「使用」あたりの「イベントラベル」を使うことになります。
戦闘でどの武器を使ったかは、「システム変数」の「対象ユニット使用武器」・「相手ユニット使用武器」を使います。
どちらの変数に目的のユニットのものが格納されているか調べるには「対象ユニット/対象パイロット」・「相手ユニット/相手パイロット」を使います。
つまり今回の場合は「攻撃後」「破壊」ラベルで、目的のユニットが初級剣技を使ったかを調べて、使っていた場合は初級剣技使用回数を+1します。
変数を操作するには「Setコマンド」や「=」での代入を行います。
あとは任意のタイミングで 初級剣技使用回数 が50を超えているか確認して、超えていた場合は「初級奥義」をEnableしてやれば良いでしょう。
なお、ステージを越えて使用するラベルをいちいちシナリオに書いていては容量の無駄ですので、Data\Inclede.eveファイルに書き込むと良いでしょう。
基本はヘルプをよく読むことと、他の人が作ったシナリオファイルを覗くことです。
そして上手くいかずに悩んで考える時間は無駄ではありません。
引用返信
/
返信
削除キー/
編集
削除
■20957
/ inTopicNo.3)
Re[2]: 技のカウント
▲
▼
■
□投稿者/ 夜叉
-(2008/05/09(Fri) 09:19:26)
[ID:ieYK4nIL]
Mrさん、ありがとうございます。なんとか作りたいものができました。
一応↓の感じです。
使用後 リオン=マグナス デモンズランス:
Global デモンズランス使用回数
Set デモンズランス使用回数 (デモンズランス使用回数 + 1)
Talk システム
デモンズランス使用回数$(デモンズランス使用回数)回
End
if デモンズランス使用回数 = 15 Then
Enable リオン=マグナス デモンズランス・ゼロ
Talk システム
リオンが晶術を覚えました
End
endif
Exit
という感じです。
もっとよい感じで出来るのならご意見をお聞かせください。
引用返信
/
返信
削除キー/
編集
削除
■20958
/ inTopicNo.4)
Re[3]: 技のカウント
▲
▼
■
□投稿者/ Mr
@
-(2008/05/09(Fri) 15:01:04)
[ID:msSebhOJ]
http://mrsrc.web.fc2.com/
付け加えるとしたら、相手を倒してしまった場合は使用後ラベルに行きませんので、破壊ラベルの追加でしょうか。
なお、これでもまだ「デモンズランスで攻撃したが返り討ちにあった」場合についてはカウントされません。
思い切って「撃破された場合はカウントしない」ことにするか、条件を突き詰めていくかは作者の裁量です。
表現方法についても同様です。
個人的には、いちいち使用回数をTalkで見せられるのは邪魔ではないかと思います。
ですので、ユニットにダミー能力を持たせて解説で表示したり(データの解説文にもTalkコマンド同様に変数が使えます)、ユニットコマンドで表示したりする方が無難かなと。
また、このユニット以外にも使用回数を設定されると思うので、そうなった場合いちいち全キャラ書くのは大変でしょう。
そのためにも、もう少し汎用性を高める必要があるかなとは思います。
If文で使っている定数(変数と比べている、"デモンズランス"など直接書き込んでいるもののことです)を変数に置き換えるなどの方法があります。
たとえばラベルを「使用後 全 全:」として、対象ユニットを条件式にしてSwitch文を実行、
対象ユニットに応じて「カウントする武器」「回数をカウントする変数」「使用可能になる武器」を変数で設定するようにします。
*破壊 全:
# 破壊したのがリオン=マグナスでなく、武器がデモンズランスでない場合終了する
If 相手ユニット <> "リオン=マグナス" Exit
If 相手ユニット使用武器 <> "デモンズランス" Exit
*使用後 リオン=マグナス デモンズランス:
Global デモンズランス使用回数
Set デモンズランス使用回数 (デモンズランス使用回数 + 1)
Talk システム
デモンズランス使用回数$(デモンズランス使用回数)回
End
If デモンズランス使用回数 = 15 Then
Enable リオン=マグナス デモンズランス・ゼロ
Talk システム
リオンが晶術を覚えました
End
EndIf
Exit
引用返信
/
返信
削除キー/
編集
削除
■20960
/ inTopicNo.5)
Re[4]: 技のカウント
▲
▼
■
□投稿者/ あかんべえ
-(2008/05/10(Sat) 01:04:48)
[ID:w4VMFyBf]
ども、あかんべえと申します。
> 付け加えるとしたら、相手を倒してしまった場合は使用後ラベルに行きませんので、破壊ラベルの追加でしょうか。
Mrさん、たびたびの横槍、すみません。
使用後ラベルに行かないのは使用ユニットが倒された場合だけで、相手を倒した場合には発生します。
対して攻撃後イベントはどちらが倒れても発生せず、ややこしいです。
> なお、これでもまだ「デモンズランスで攻撃したが返り討ちにあった」場合についてはカウントされません。
> 思い切って「撃破された場合はカウントしない」ことにするか、条件を突き詰めていくかは作者の裁量です。
「撃破された場合はカウントしない」のが簡明なので、おすすめします。
「撃破された場合も、すべてカウントする」とする場合は、使用後イベントの変わりに使用イベントにすればよく、かんたんです。
「武器使用前に先制攻撃で撃破された場合にはカウントせず、武器使用後に撃破された場合はカウントする」とする場合は、相当ややこしいです――攻撃側か反撃側かだけでなく、属性「先」「後」や相手側のカウンター系パイロット能力なども考える必要があるので。
> *使用後 リオン=マグナス デモンズランス:
> Global デモンズランス使用回数
> Set デモンズランス使用回数 (デモンズランス使用回数 + 1)
ここはこれでも問題なく動作はしますが、2行目はグローバル変数を設定するコマンドなのでシナリオの最初に一度呼び出せば足ります。また、3行目は Incrコマンドのほうが簡明です。なので、
(シナリオ冒頭に)
Global デモンズランス使用回数
(インクルードなどで)
*使用後 リオン=マグナス デモンズランス:
Incr デモンズランス使用回数
としたほうがきれいになるかと。
引用返信
/
返信
削除キー/
編集
削除
■20961
/ inTopicNo.6)
Re[5]: 技のカウント
▲
▼
■
□投稿者/ 夜叉
-(2008/05/10(Sat) 09:07:00)
[ID:eS70O1if]
Mrさん、あかんべえさん、ありがとうございます。参考にさせていただきます。
解決済み!
引用返信
/
返信
削除キー/
編集
削除
トピック内ページ移動 / <<
0
>>
このトピックに書きこむ
過去ログには書き込み不可
Pass/
HOME
HELP
新規作成
新着記事
トピック表示
検索
新着情報
過去ログ
-
Child Tree
-
-
Antispam Version
-