二维上怪物的随机移动、有倾向性移动的小算法

随机移动:

假设怪物是完全不定向移动,
建立XY轴,使用单位向量(X,Y)表示方向,
随机一个在 -1~1 之间的浮点数,设为X,
单位向量有勾股定理 X2 + Y2 = 1,求得Y,此处Y>0所以要再随机一下决定正负号,
于是得到怪物的移动方向(X,Y)。

有倾向性地移动:

假设怪物还是随机移动但是会逐渐向玩家靠拢,
先如之前那样随机一个方向(X,Y),
然后根据怪物和玩家的相对位置,相减得到位置差,记做(X0,Y0),
那么计算得到新矢量(X0,Y0)+K(X,Y),
此处K代表随机因素影响的权重,K越小,怪物向玩家移动的倾向越明显,
于是得到怪物的移动方向(X0+KX,Y0+KY)。(注:此向量不是单位向量,一般还需要单位化)

你可能感兴趣的:(小游戏,二维)