我目前正在开发一款2D游戏,玩家必须在一定时间内偷偷摸摸一个静止的人。在路上有各种各样的板条箱(取决于它的等级),我想这样做,以便玩家可以躲在板条箱后面偷偷溜上静止的人。
我认为我可以使用锥形视觉来观察那个人,但我并不确定如何实现这一目标。玩家也不必看到该人的视锥。
与github上的this sample code类似的效果。
注意:玩家无法通过板条箱,人员和板条箱都是精灵。
答案 0 :(得分:1)
你必须计算玩家是否与这个人一致,如果是,你可以检查每个方框,如果3个对象吃的是同一个位置,如果不是你在视野person_looking
。 concidere player and person a list
with coords。
def isInLine(player, person):
deltaX = person[0] - player[0]
deltaY = person[1] - player[1]
if (person[0] == player[0]) or (person[1] == player[1]) or (abs(deltaX) == abs(deltaY)):
return true
就像在国际象棋比赛中一样,想象一下你要检查国王是否在接受女王的检查。它的逻辑也一样。