anscheinend ist hier irgendwo ein fehler funktioniert leider nicht ;(
vielleicht kann da mal wer drüberschauen ?
danke.
Code: Alles auswählen
EnableExplicit
Structure Struct_Player
rotation.f
Position.point
EndStructure
Global spieler1.Struct_Player
Define enemy.Struct_Player
Procedure KI_FIND_PLAYER(*Enemyplayer.Struct_Player)
;// return degree
ProcedureReturn Degree(ATan2(spieler1\Position\x-*Enemyplayer\Position\x,spieler1\Position\y-*Enemyplayer\Position\y))
EndProcedure
;// RETURN DIF KI PLAYER TO SEE IF KI WALK TO PLAYER
Procedure KI_DIRECTION_PLAYER(*Enemyplayer.Struct_Player)
Debug "----"
Debug "enemy" + *Enemyplayer\Rotation
Debug "player" + KI_FIND_PLAYER(*Enemyplayer)
If (*Enemyplayer\Rotation > KI_FIND_PLAYER(*Enemyplayer) And *Enemyplayer\Rotation+90 < KI_FIND_PLAYER(*Enemyplayer)) Or
(*Enemyplayer\Rotation < KI_FIND_PLAYER(*Enemyplayer) And *Enemyplayer\Rotation-90 > KI_FIND_PLAYER(*Enemyplayer))
ProcedureReturn #True
EndIf
ProcedureReturn #False
EndProcedure
enemy\rotation = 60
enemy\Position\x = 10
enemy\Position\y = 10
spieler1\rotation = 0
spieler1\Position\x = 20
spieler1\Position\y = 30
Debug KI_DIRECTION_PLAYER(enemy)