diff --git a/android/main.hsp b/android/main.hsp index 197ce2f..501ac89 100644 --- a/android/main.hsp +++ b/android/main.hsp @@ -64,7 +64,7 @@ CelDiv BUFFER_GOATOH_TARSO, 0, 0, 97, 49 ; ゴートうインスタンス生成 - Goatoh = New@Goatoh (540, 800, DIRECTION_LEFT) + Goatoh = New@Goatoh (960, 800, DIRECTION_LEFT) ; サウンド読込み MMLoad "mumumumu.wav", SOUND_MUMUMUMU diff --git a/android/modules/goatoh.mod.hsp b/android/modules/goatoh.mod.hsp index 6880bac..116b4c0 100644 --- a/android/modules/goatoh.mod.hsp +++ b/android/modules/goatoh.mod.hsp @@ -17,6 +17,14 @@ New \ posX.insNum = p_initPosX posY.insNum = p_initPosY + If Length2 (legArgs) = 0 { + DDim legArgs, 4, 1 + } + + If Length2 (legDirections) = 0 { + Dim legDirections, 4, 1 + } + legArgs.LEG_LF.insNum = 0. legArgs.LEG_RF.insNum = 0. legArgs.LEG_LH.insNum = 0. @@ -43,7 +51,7 @@ New \ direction.insNum = p_initDirection - walking.insNum = False + walking.insNum = True running.insNum = False eating.insNum = False openingEyes.insNum = False @@ -67,6 +75,15 @@ Walk \ posY.p_insId += walkVel.p_insId * Sin (arg.p_insId) } + Repeat 4 + If legDirections.cnt.p_insId = LEG_DIRECTION_FRONT { + legArgs.cnt.p_insId -= Deg2Rad (1) + } + Else { + legArgs.cnt.p_insId += Deg2Rad (1) + } + Loop + Return #deffunc local \ @@ -83,10 +100,10 @@ Eat \ Draw \ int p_insId Pos posX.p_insId - scale.p_insId * 50, posY.p_insId + scale.p_insId * 26 - CelPut BUFFER_GOATOH_LEG, 0, scale.p_insId, scale.p_insId + CelPut BUFFER_GOATOH_LEG, 0, scale.p_insId, scale.p_insId, legArgs.LEG_RF.p_insId Pos posX.p_insId + scale.p_insId * 30, posY.p_insId + scale.p_insId * 26 - CelPut BUFFER_GOATOH_LEG, 0, scale.p_insId, scale.p_insId + CelPut BUFFER_GOATOH_LEG, 0, scale.p_insId, scale.p_insId, legArgs.LEG_RH.p_insId Pos posX.p_insId + scale.p_insId * 64, posY.p_insId - scale.p_insId * 12 CelPut BUFFER_GOATOH_TAIL, 0, scale.p_insId, scale.p_insId @@ -95,16 +112,31 @@ Draw \ CelPut BUFFER_GOATOH_TARSO, 0, scale.p_insId, scale.p_insId Pos posX.p_insId - scale.p_insId * 30, posY.p_insId + scale.p_insId * 30 - CelPut BUFFER_GOATOH_LEG, 0, scale.p_insId, scale.p_insId + CelPut BUFFER_GOATOH_LEG, 0, scale.p_insId, scale.p_insId, legArgs.LEG_LF.p_insId Pos posX.p_insId + scale.p_insId * 50, posY.p_insId + scale.p_insId * 30 - CelPut BUFFER_GOATOH_LEG, 0, scale.p_insId, scale.p_insId + CelPut BUFFER_GOATOH_LEG, 0, scale.p_insId, scale.p_insId, legArgs.LEG_LH.p_insId Pos posX.p_insId - scale.p_insId * 64, posY.p_insId - scale.p_insId * 20 CelPut BUFFER_GOATOH_HEAD, 0, scale.p_insId, scale.p_insId, neckArg.p_insId Pos posX.p_insId - scale.p_insId * 64, posY.p_insId - scale.p_insId * 20 - CelPut BUFFER_GOATOH_FACE_CC, 0, scale.p_insId, scale.p_insId, neckArg.p_insId + If openingEyes { + If openingMouth { + CelPut BUFFER_GOATOH_FACE_OO, 0, scale.p_insId, scale.p_insId, neckArg.p_insId + } + Else { + CelPut BUFFER_GOATOH_FACE_OC, 0, scale.p_insId, scale.p_insId, neckArg.p_insId + } + } + Else { + If openingMouth { + CelPut BUFFER_GOATOH_FACE_CO, 0, scale.p_insId, scale.p_insId, neckArg.p_insId + } + Else { + CelPut BUFFER_GOATOH_FACE_CC, 0, scale.p_insId, scale.p_insId, neckArg.p_insId + } + } Interval@Goatoh p_insId @@ -118,6 +150,8 @@ Interval \ If frame.p_insId \ 150 == 30 { MMPlay SOUND_MUMUMUMU + + openingMouth = True } } Else: If running.p_insId {