RPG◆所持金を常時画面上にテキストで表示
投稿者: rurun9 投稿日:2011/11/21 12:08
≪広告が多彩になったわぁ
|
気付くと過ぎている≫
RPG型はあまり弄ってなかったから気付かなかったんだけど
warp()すると画面上のテキストが全部削除されるのね…
だから「テキストを常時画面上に表示する」て方法を使ってる人が極僅かなのか
開始スクリプトでテキストエリア作成を定義しておいて
各マップ全部に、どこか1マスに自動開始イベントを設置
有効条件は getFlag("テキスト作成")
更に各マップ全部に、どこか1マスに自動開始イベントを設置
有効条件は getFlag("テキスト")
んでお金の変動の際には必ず
というようにフラグを一緒に書く。
そしてマップ移動の際には必ず
というようにすれば常時画面上に所持金が表示されるワケか…
コレ最初に考えた人、苦労し過ぎてタダでは教えられない!て感じだったんだろうね…
開始スクリプトでスタート時のプレイヤーキャラの位置を指定したい場合はwarp()ではなく
てのを使った方が早くて無難なのね
ツイート
warp()すると画面上のテキストが全部削除されるのね…
だから「テキストを常時画面上に表示する」て方法を使ってる人が極僅かなのか
開始スクリプトでテキストエリア作成を定義しておいて
def tukuru() #テキスト表示場所作成 setTextFontColor(192,192,0) setVariable("t",createText(256,0,256,40)) setTextFontColor(255,255,255) #テキストイベントフラグ setFlag("テキスト作成",false); setFlag("テキスト",true) end #tukuru()終 def kaku() setText(getVariable("t"),getMoney()+getDenomination()) setFlag("テキスト",false) end kaku()終 setFlag("テキスト作成",true)
有効条件は getFlag("テキスト作成")
tukuru()
有効条件は getFlag("テキスト")
kaku()
addMoney(100); setFlag("テキスト",true)
そしてマップ移動の際には必ず
setFlag("テキスト作成",true); warp(99999,2,3)
コレ最初に考えた人、苦労し過ぎてタダでは教えられない!て感じだったんだろうね…
開始スクリプトでスタート時のプレイヤーキャラの位置を指定したい場合はwarp()ではなく
warpEvent("playerCharacterEvent", 2,3)
コメントする
コメントするには、ログインする必要があります。
ワープするとキャンパスが初期化されることを逆に利用すれば
1マップにつき1つの自動開始イベントで、しかも、
特別なテキスト描画関数を定義せずとも同じことが可能です
自動開始イベントを一つ作り、有効条件に
と書く
イベントの中に
と書く
これで、ワープのたびにテキスト関数を書く必要もありません
(ワープ先のマップにも同様の自動開始イベントがあることが条件ですが)
また、ワープ以外の時にテキストの表示内容を更新したい場合は
そのタイミングで
を書く
これで、キャンパスをオフにしてしまえば、
キャンパスオフに反応する自動開始イベントがオンになり、
テキストが更新されます
ユーザー定義関数をまだモノにしてない人や、
ある程度ゲームを作った後で
後付けで常時表示テキストを作るときなんかには
こっちの方が便利だと思います
以上、超絶亀レスポンスで恐縮ですが、
ブログや掲示板でテキスト常時表示について調べた時に
この記事が一番検索性が高かったのでコメントつけさせてもらいました
ありがとうございました