//----------------------------------------------------------- // ハイパー赤ちゃんDOG // ボールを見ると追いかける // たたかれると泣く // なでると喜ぶ //----------------------------------------------------------- SET:Power:1 POSE:AIBO:slp_slp SET:ball:0 //追いかけモード SET:bang:0 //なぐられた? SET:nade:0 //なでられた? SET:amae:0 //甘えモード SET:head:0 //Prev_Touch_head_pressの値を保持 SET:cntb:0 //叩かれた回数チェックカウンタ SET:cntr:0 //乱数発生用のカウンタ SET:Touch_head_press:0 //デバッグ用? //----------------------------------------------------------- // メインループ :100 SET:fall:Gsensor_status AND:fall:1 //転倒チェック SET:start:100 IF:=:fall:1:9000 //転倒 IF:=:ball:1:2000 //ボール追いかけモード IF:=:bang:1:3000 //たたかれた? IF:=:amae:1:4000 //甘えモード IF:=:nade:1:5000 //ナデナデモード IF:=:ball:0:1000 //各フラグ検出モード GO:100 //----------------------------------------------------------- // 各フラグ検出モード :1000 WAIT:5000 SET:ball:0 //ballの初期化 :1100 IF:=:head:Touch_head_press:1300 //前回のループと同じ値の時 SET:head:Touch_head_press IF:<:Touch_head_press:300:1200 //たたかれた? SET:bang:1 GO:100 :1200 IF:<:Touch_head_press:30:1300 //なでられた?結構あいまい SET:nade:1 GO:100 :1300 IF:>:Distance:200:1400 //人が近くにいると SET:amae:1 //amaeモードをセット GO:100 :1400 IF:<:Cdt_npixel:1000:1500 //もし近くにボールが見えたら SET:ball:1 //ボールを蹴る GO:100 //特に何もすることが無いときは乱数によって行動に変化を :1500 ADD:cntr:1 IF:>:cntr:10:1510 //活動しすぎた時はお疲れモードへ RND:rand:1:3 //乱数の発生(1〜3) IF:=:rand:1:1530 IF:=:rand:2:1540 IF:=:rand:3:1550 GO:100 //AIBOお疲れモード一眠りしよっと :1510 SET:cntr:0 //カウンター初期化 PLAY:AIBO:Akubi_slp_D //あくび POSE:AIBO:oSleeping5 //寝のポーズ WAIT :1520 //起こされるまで寝る IF:>:Touch_head_time:80:100 GO:1520 //其の壱 :1530 PLAY:AIBO:Think_slp_C //退屈そう GO:100 //其の弐 :1540 MOVE:LEGS:STEP:BABY:FORWARD:10 //ヨチヨチ歩く(後ろ) GO:100 //其の参 :1550 MOVE:LEGS:STEP:BABY:BACKWARD:10 //ヨチヨチ歩く(前) GO:100 //----------------------------------------------------------- //ボールキックモード :2000 SET:ball:1 IF:<:Cdt_npixel:1000:100 //ボールが近い? MOVE:HEAD:C-TRACKING:100 //色追跡開始 IF:>:Head_pan:0:2100:2200 //首の角度によって蹴る足を決定 //左足キック :2100 MOVE:HEAD:HOME MOVE:LEGS:KICK:LEFT_KICK:0 MOVE:LEGS:STEP:BABY:FORWARD:1 SET:ball:2100 SET:ball:0 //ballの初期化 GO:100 //右足キック :2200 MOVE:HEAD:HOME MOVE:LEGS:KICK:RIGHT_KICK:0 MOVE:LEGS:STEP:BABY:FORWARD:1 SET:ball:2200 SET:ball:0 //ballの初期化 GO:100 //----------------------------------------------------------- //たたかれた?!モード :3000 SET:bang:3000 SET:bang:0 ADD:cntb:1 IF:>:cntb:3:3100 //5回以上叩かれたら怒る! POSE:AIBO:Reset3 PLAY:AIBO:Cry_slp_C //悲しい感じ PLAY:SOUND:sad1_xxa:50 //泣く WAIT SET:Touch_head_press:0 //初期化 WAIT:5000 GO:100 //----------------------------------------------------------- //叩きすぎると怒る! :3100 PLAY:AIBO:Tail3_sta //ムッカー! WAIT PLAY:SOUND:ang5_dda:30 //怒りサウンド PLAY:LIGHT:ang1_eye:4 //怒りアイ WAIT:5000 SET:cntb:0 GO:100 //----------------------------------------------------------- //甘えモード :4000 SET:amae:0 //amaeを初期化 PLAY:AIBO:Please_sit3 //だっこして〜〜 WAIT:5000 GO:100 //----------------------------------------------------------- //ナデナデモード :5000 ADD:cntb:-1 //殴られた回数をちょっとへしてあげる SET:nade:0 //フラグの初期化 PLAY:LIGHT:joy3_eye:10 //ニコニコ PLAY:AIBO:Tail2_sit PLAY:SOUND:joy1rxxy:50 //喜びサウンド SET:Touch_head_press:0 //初期化 WAIT:1000 GO:100 //----------------------------------------------------------- //転倒しちゃった! :9000 QUIT:AIBO MOVE:AIBO:ReactiveGU WAIT GO:100 //==========================END==============================