実験的に オリジナル関数

投稿者:Pink2 mini kage1215 投稿日:2013/03/31 08:04

speakを使うと後ろに黒い背景が入るのを嫌い
それ以外の方法で表示する方法

#テキストのエリアがポジション0×400 サイズ200×800のパターン

setVariable("talkareaN", createText(12, 400, 800-12, 28))#名前欄ポジ・サイズ
setVariable("talkarea1", createText(12, 430, 800-12, 28))#一行目ポジ・サイズ
setVariable("talkarea2", createText(12, 460, 800-12, 28))#ニ行目ポジ・サイズ
setVariable("talkarea3", createText(12, 490, 800-12, 28))#三行目ポジ・サイズ
setVariable("talkarea4", createText(12, 520, 800-12, 28))#四行目ポジ・サイズ
setVariable("talkareaC", createText(750, 570, 50, 28))#click待ちのポジ・サイズ
setVariable("waittimevalue", 450) #ウエイトの調整



def talk(name,l1,l2,l3,l4)
	setText(getVariable("talkareaN"), "")
	setText(getVariable("talkarea1"), "")
	setText(getVariable("talkarea2"), "")
	setText(getVariable("talkarea3"), "")
	setText(getVariable("talkarea4"), "")
	setText(getVariable("talkareaC"), "")

	setText(getVariable("talkareaN"), name)
	setText(getVariable("talkarea1"), l1)
   waitTime(getVariable("waittimevalue"))
	setText(getVariable("talkarea2"), l2)
   waitTime(getVariable("waittimevalue"))
	setText(getVariable("talkarea3"), l3)
   waitTime(getVariable("waittimevalue"))
	setText(getVariable("talkarea4"), l4)
   waitTime(getVariable("waittimevalue"))
	setText(getVariable("talkareaC"), "▼") #クリック待ち用テキスト 画像ファイルにしてもいいかも
  startInput()
  loop = true
  while loop
    while hasInput()
      takeInput()
      if isMouseDown()
         loop = false
      end
    end
    waitTime(30)
  end
  endInput()
end



talk("名前","一行目にはここ","ニ行目にはここ","三行目にはここ","四行目はここに記入する")
a1="俺はしゃべるマン"
a2="こうやって"
a3="変数を"
a4="指定することも"
a5="できるびょん!!"
talk(a1,a2,a3,a4,a5)
talk(a1,"2行しか必要ないところでも","後ろの部分は消さないでおいてくれよ","","")




コメントする

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

コメント一覧

Cdv30200 aoi icon mini aoihikawa(投稿日:2013/03/31 12:00, 履歴)
やりたいことを関数として
纏めておくのは良いですね

変数名を設定する時
分かりやすい名称を使用すること
数字のみの変数名は使用しないように

使用しないところまで
引数を渡さないといけないのは
汎用性としては面倒です

if文を使用して、引数に値が入っている場合のみ
setTextが実行されるように
してみてはいかがでしょうか
a = "あああ"

if a
  speak("aに値が入っている時、実行されます")
end

if b
  speak("bに値が入っている時、実行されます")
end
Cdv30200 aoi icon mini aoihikawa(投稿日:2013/03/31 12:05, 履歴)
サンプルスクリプト部分、修正
def testdef(a, b)
  if a
    speak("aに値が入っている時、実行されます")
  end

  if b
    speak("bに値が入っている時、実行されます")
  end
end

testdef("ああああ")
Pink2 mini kage1215(投稿日:2013/03/31 13:32, 履歴)
おお! なるほど if使えばいいのか!

使用しないところまで引数を指定しない方法を目指して
いろんな方法を模索していたので助かりました。
ありがとうございます。