片方が表示されません・・・(質問掲示板

投稿: User icon mini 退会したユーザー 投稿:2012/04/08 18:12:08(最新:2012/04/08 21:28:08)
私が夏季Rmake大会に出すゲームの開始スクリプトなんですが、
setVariable("水分量", 1)
setVariable("栄養分", 0)
createText(589, 0, 213, 46)
createText(589, 51, 213, 46)
setText(getVariable("水分量"), "水分量:",getVariable("水分量"))
setText(getVariable("栄養分"), "栄養分:",getVariable("栄養分"))

とかくと画面上に水分量としか表示されません。
どうしてでしょうか?

コメントする

コメントするには、ログインする必要があります。

コメント一覧

Cdv30200 aoi icon mini aoihikawa(投稿日:2012/04/08 21:20, 履歴)
setText関数・createText関数の
使い方が間違っています。

テキスト表示に必要なセットは次のようになります。
#-----テキスト枠を作成-----
#IDが「text_a」という枠を作成
text_a = createText(589, 0, 213, 46) 

#-----作成したテキスト枠に文字を挿入-----
#IDが「text_a」の枠に"文字表示"を表示
setText(text_a, "文字表示") 


これに対し、作成されているスクリプトの
setText関数で
IDを入れるべき箇所に、
"水分量"や"栄養分"の値が入っているため
正常に表示されないわけです。


また、以前にも同じ過ちをしておりますが、
基本的に、speak関数以外で
「,」を使用した文字連結はできません。
speak関数でも「+」なら動作しますので
「+」を使用するクセをつけていきましょう。

#水分量・栄養分の初期値を設定
setVariable("水分量", 1) 
setVariable("栄養分", 0)

#-----テキスト枠を作成-----
text_suibun = createText(589, 0, 213, 46) #"水分量"用 
text_eiyou = createText(589, 51, 213, 46) #"栄養分"用

#-----作成したテキスト枠に文字を挿入-----
#"水分量"の表示
setText(text_suibun, "水分量:" + getVariable("水分量"))
#"栄養分"の表示 
setText(text_eiyou, "栄養分:" + getVariable("栄養分")) 


それぞれの関数に必要な引数(関数に渡す値)を
理解してから利用しましょう。
User icon mini 退会したユーザー(投稿日:2012/04/08 21:28, 履歴)
わかりました_(_ _)_
Material 71926 1 mini なとおとき(投稿日:2012/04/08 21:11, 履歴)
なるほど、テキストは変数で設定してたんどすな。
createTextに返り値がないのとsetTextの第1引数が変数だったわけが
ようやくわかりました(゜∀゜;)
    mini とりか(投稿日:2012/04/08 20:12, 履歴)
表示するだけなら栄養分を2にするだけでいい予感





setText(getVariable("水分量"), "水分量:",getVariable("水分量"))
setText(getVariable("栄養分"), "栄養分:",getVariable("栄養分"))

でgetVariable("水分量")とgetVariable("栄養分")をテキストIDに指定しているので

setVariable("水分量", 1)
setVariable("栄養分", 0) より

水分量のテキストIDは1、栄養分のテキストIDは0

テキストIDが0だと画面に表示されないっぽいね
User icon mini 退会したユーザー(投稿日:2012/04/08 20:38, 履歴)
栄養分を1にすると水分量と欠いてあるべき場所に栄養分が上書きされてしまい、栄養分しか表示されません・・・
    mini とりか(投稿日:2012/04/08 20:45, 履歴)
テキストIDが1と1同士だから上書きしちゃうみたい(´・ω・`)

となるとちゃんと1でも0でも表示するなら

setText(getVariable("水分量"), "水分量:",getVariable("水分量"))
setText(getVariable("栄養分"), "栄養分:",getVariable("栄養分"))



setText(1, "水分量:",getVariable("水分量"))
setText(2, "栄養分:",getVariable("栄養分"))

にする必要がありそう

これならテキストIDは1と2固定だから同じにならないし
0にもならないからちゃんと表示されると思う
User icon mini 退会したユーザー(投稿日:2012/04/08 21:03, 履歴)
おー直りました!
ありがとうございます^^
User icon mini 退会したユーザー(投稿日:2012/04/08 21:03, 履歴)
おー直りました!
ありがとうございます^^
    mini とりか(投稿日:2012/04/08 21:05, 履歴)
大事なことだから2回言ったんですねどういたしましてー
User icon mini 退会したユーザー(投稿日:2012/04/08 21:04, 履歴)
なとおときさん、satsuki1さん、とりかさん、ありがとうございました!
Material 71926 1 mini なとおとき(投稿日:2012/04/08 18:36, 履歴)
テキストID設定すればすぐ直りますよ。
User icon mini 退会したユーザー(投稿日:2012/04/08 18:53, 履歴)
なんですか、それ。
Material 71926 1 mini なとおとき(投稿日:2012/04/08 19:07, 履歴)
http://rmake.jp/document/function_reference#createText関数

createText関数とsetText関数を見ればたぶんわかりますよ。
User icon mini 退会したユーザー(投稿日:2012/04/08 19:14, 履歴)
書き換えてみてもダメでした。
開始スクリプト↓
setVariable("水分量", 1)
setVariable("栄養分", 0)
textID = createText(589, 0, 213, 46)
textID = createText(589, 51, 213, 46)
setText(getVariable("水分量"), "水分量:",getVariable("水分量"))
setText(getVariable("栄養分"), "栄養分:",getVariable("栄養分"))

シーン内↓
case speakWithSelect(3,"水やり","液体肥料","何もしない", 
    "どうする?\n※どれか1つを選ぶと1日が終わります。")
  when 0
setVariable("水分量",getVariable("水分量") + 1)
setText(textID, "水分量:",getVariable("水分量"))
    a = getVariable("水分量")  
d = 6 
if((a >= d)) 
 showCenterImage(119392)
speak("水分が多すぎてしおれてしまいました・・・") 
goBadEnding()
else   
speak("植物に水をやりました。") 
end
  when 1
    setVariable("栄養分",getVariable("栄養分") + 1)
setText(textID, "栄養分:",getVariable("栄養分"))
    a = getVariable("栄養分")  
d = 5 
c = getVariable("水分量")
if((a >= d))  ||  ((c == d))
speak("植物が成長しました!")
else   
speak("植物にうすめた液体肥料をやりました。") 
end
  when 2
    
end
setVariable("水分量",getVariable("水分量") - 1)
    a = getVariable("水分量")  
b = 0 
if((a == b))
showCenterImage(119392)
speak("水分が無くなって枯れてしまいました・・・") 
goBadEnding()
else   
speak("次の日") 
end
changeChapter("花 育成メニュー")
      mini きゅうり(投稿日:2012/04/08 19:31, 履歴)
変数が同じになってます。
それぞれ別の変数を指定するんです。(割り込みすいません)
User icon mini 退会したユーザー(投稿日:2012/04/08 19:35, 履歴)
どうやってですか?
片方を変えると定義されていないって出るんですけど・・・
User icon mini 退会したユーザー(投稿日:2012/04/08 19:39, 履歴)
普通に変数を使うと、エラーは出なくなったんですが、まだ1つのままです・・・
User icon mini 退会したユーザー(投稿日:2012/04/08 18:13, 履歴)
追記
水分量:1
でした。