Szerző Téma: NPC Eltűnik?  (Megtekintve 437 alkalommal)

Nem elérhető 1Mark6

  • 437
    • Profil megtekintése
NPC Eltűnik?
« Dátum: 2016. január 26. - 16:05:49 »
0 Show voters
Sziasztok !
Az lenne a problémám, hogy van egy járművel közlekedő NPC-m, ami ha el ér egy bizonyos pontot, onnan fogja és elteleportál a 0,0,0 koordinátára.
Na most :
A módba nem szerepel ilyen, hiszen egy new.pwn-be tesztelem.
Az npc script :



#include <a_npc>
new gStoppedForTraffic = 0;
public ScanTimer();
#define AHEAD_OF_CAR_DISTANCE    11.0
#define SCAN_RADIUS            11.0
//------------------------------------------
main(){}
//------------------------------------------
stock GetXYInfrontOfMe(Float:distance, &Float:x, &Float:y)
{
    new Float:z, Float:angle;
    GetMyPos(x,y,z);
    GetMyFacingAngle(angle);
    x += (distance * floatsin(-angle, degrees));
    y += (distance * floatcos(-angle, degrees));
}
//------------------------------------------
public OnNPCModeInit()
{
SetTimer(\"ScanTimer\",200,1);
}
//------------------------------------------
stock LookForAReasonToPause()
{
     new Float:X,Float:Y,Float:Z;
GetMyPos(X,Y,Z);
GetXYInfrontOfMe(AHEAD_OF_CAR_DISTANCE,X,Y);
for(new x = 0; x < MAX_PLAYERS; x++)
{
    if(IsPlayerConnected(x))
{
   if(GetPlayerState(x) == PLAYER_STATE_DRIVER || GetPlayerState(x) == PLAYER_STATE_ONFOOT)
   {
      if(IsPlayerInRangeOfPoint(x,SCAN_RADIUS,X,Y,Z))
      {
         return 1;
      }
   }
}
}
return 0;
}
 
//------------------------------------------
public ScanTimer()
{
    new ReasonToPause = LookForAReasonToPause();
   
if(ReasonToPause && !gStoppedForTraffic)
{
PauseRecordingPlayback();
gStoppedForTraffic = 1;
}
else if(!ReasonToPause && gStoppedForTraffic)
{
    ResumeRecordingPlayback();
    gStoppedForTraffic = 0;
}
}
 
//------------------------------------------
stock StartPlayback()
{
StartRecordingPlayback(PLAYER_RECORDING_TYPE_DRIVER,\"AngelPineBus\");
gStoppedForTraffic = 0;
}
 
//------------------------------------------
public OnRecordingPlaybackEnd()
{
    StartPlayback();
}
//------------------------------------------
public OnNPCEnterVehicle(vehicleid, seatid)
{
    StartPlayback();
}
//------------------------------------------
public OnNPCExitVehicle()
{
    StopRecordingPlayback();
}
//------------------------------------------

 
 
Ötlet?

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal