スポンサーサイト

 --------
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
カテゴリ :スポンサー広告 トラックバック(-) コメント(-)

Expression2『クイックタイマー』

 2011-06-13
gm_owata_coast_030143.jpg

#EGPのタイマー、ボタンは別売りです。
 GUIは面倒だしEGPに向いてないので諦めた。
 もう少しスリムにしたかった、試行錯誤しながら作ったので無駄な部分あるかもしれない。

*一応説明。
StartStop = カウントダウンの開始と停止をトグル式で行います。
Up = 時間設定を5秒ずつ上げます。
Down = 時間設定を5秒ずつ下げます。 
Reset = 時間設定を初期化します。


@name EGP Quick Timer
@inputs EGP:wirelink StartStop Up Down Reset
@outputs
@persist Toggle Sec Min
@persist COUNT HOLD
@trigger
interval(1000)

#define
SEC=time("sec")
MIN=time("min")

#init
if(first()|dupefinished()){
EGP:egpBox(1,vec2(256,256),vec2(512,512))
EGP:egpColor(1,vec(70,130,180))
EGP:egpAlign(1,1,1)

EGP:egpText(2,"Quick Timer",vec2(256,64))
EGP:egpSize(2,75)
EGP:egpColor(2,vec(255,255,255))
EGP:egpAlign(2,1,1)

EGP:egpBox(3,vec2(256,256),vec2(256,128))
EGP:egpColor(3,vec(18,149,240))
EGP:egpAlign(3,1,1)

EGP:egpText(4,""+Min,vec2(250,256))
EGP:egpSize(4,75)
EGP:egpColor(4,vec(255,255,255))
EGP:egpAlign(4,2,1)

EGP:egpText(5,""+Sec,vec2(355,256))
EGP:egpSize(5,75)
EGP:egpColor(5,vec(255,255,255))
EGP:egpAlign(5,2,1)

EGP:egpText(6,"",vec2(256,128))
EGP:egpSize(6,50)
EGP:egpColor(6,vec(255,255,255))
EGP:egpAlign(6,1,1)

EGP:egpCircle(7,vec2(97,415),vec2(80,80))
EGP:egpColor(7,vec(18,149,240))
EGP:egpAlign(7,1,1)

EGP:egpCircle(8,vec2(415,415),vec2(40,100))
EGP:egpColor(8,vec(18,149,240))
EGP:egpAlign(8,1,1)

EGP:egpText(9,"(C) Copyright 2009-2011 CABIN MILD",vec2(10,10))
EGP:egpColor(9,vec(255,255,255))
EGP:egpAlign(9,0,1)

EGP:egpText(10,"Special Thanks: GEOPELIA",vec2(512,10))
EGP:egpColor(10,vec(255,255,255))
EGP:egpAlign(10,2,1)
}

#main
if(StartStop&~StartStop){
Toggle=!Toggle
}

if(Up&!Toggle){
Sec=Sec+5
}
if(Down&!Toggle){
Sec=Sec-5
}

if(Reset&!Toggle){
Sec=0
Min=0
}


if(Toggle&changed(SEC)){
Sec=Sec-1
}
if(!Toggle){
Sec=Sec
Min=Min
COUNT=0
}

if(Toggle){
EGP:egpSetText(6,"Start")
}
else{
EGP:egpSetText(6,"Stop")
}

if(Sec>=60){
Sec=0
Min=Min+1
}

if(Min>=60){
Sec=0
Min=0
}


if(Min>=1&Sec<0){
Sec=50
Min=Min-1
}

if(Sec<0){
Sec=0
}
if(Min<0){
Min=0
}

if(changed(Min)){
EGP:egpSetText(4,""+Min)
}

if(changed(Sec)){
EGP:egpSetText(5,""+Sec)
}


if(Toggle&Min<=0&Sec<=0){
timer("HoldA",100)
}
else{
HOLD=0
stoptimer("HoldA")
stoptimer("HoldB")
soundStop(1)
soundStop(2)
}

if(clk("HoldA")&!HOLD){
HOLD=1

soundPlay(1,0,"hl1/fvox/beep.wav")

timer("HoldB",100)
stoptimer("HoldA")
}
if(clk("HoldB")&HOLD){
HOLD=0

soundStop(1)
COUNT=COUNT+1

timer("HoldA",100)
stoptimer("HoldB")
}

if(COUNT>=4){
stoptimer("HoldA")
stoptimer("HoldB")
COUNT=0

timer("HoldA",1000)
}
スポンサーサイト
コメント












管理者にだけ表示を許可する
トラックバック
トラックバックURL:
http://dotdandayo.blog34.fc2.com/tb.php/138-72ade45f
≪ トップページへこのページの先頭へ  ≫
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。