31.01.2017, 00:05
спокойной ночи, ребята, Чтобы создать NPC, чтобы напасть на игрока, но NPC происходит через предметы, я попробовал несколько способов, чтобы исправить это с помощью ColAndreas, но не смог.
Code:
public FCNPC_OnUpdate(npcid) { foreach(new i : Player) { if(!IsPlayerNPC(i) && IsPlayerConnected(i)) { new Float:PosZ[3], Float:PosP[3]; GetPlayerPos(npcid, PosZ[0], PosZ[1], PosZ[2]); GetPlayerPos(i, PosP[0], PosP[1], PosP[2]); if(IsPlayerInRangeOfPoint(i, 15.0, PosZ[0], PosZ[1], PosZ[2])) FCNPC_GoTo(npcid, PosP[0], PosP[1], PosP[2], MOVE_TYPE_RUN, 0.5, false, 0.0, true); if(IsPlayerInRangeOfPoint(i, 1.0, PosZ[0], PosZ[1], PosZ[2])) { FCNPC_Stop(npcid); FCNPC_MeleeAttack(npcid, -1, true); } else FCNPC_StopAttack(npcid); if(ChecarColisao(npcid,i)) FCNPC_Stop(npcid), FCNPC_StopAttack(npcid); } } return 1; } stock ChecarColisao(npcid,playerid) { new Float:x, Float:y, Float:z,Float: endx, Float:endy, Float: endz; FCNPC_GetPosition(npcid,endx,endy,endz); GetPlayerPos(playerid,x,y,z); if(CA_RayCastLine(x, y, z, endx, endy, z, x, y, z)) return 1; return 0; }