samp-npc.exe crasht

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Hallo Leute habe ein kleines Problem,
    die neuere Version der NPC (die die für User-verkehr stoppen) disconecten einfach mit einem samp.npc exe crash,
    wobei die alten keine Probleme machen.
    Allerdings passiert das nur auf dem Homeserver (Windows 7 ja Kompatibilität auf xp) , auf dem Root laufen die einwandfrei.
    (sind grad am wechseln daher würde ich gerne bis der Wechsel vollzogen ist auf Homeserver weiter Scripten) .
    In der Config sind genug NPCs eingetragen, die log sagt immer nur


    [npc:part] streifelv has left the server (24:0)


    #define RECORDING "streifelv"


    #include <a_npc>


    new gStoppedForTraffic = 0;
    new gPlaybackActive = 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);
    }


    //------------------------------------------


    LookForAReasonToPause()
    {
    new Float:X,Float:Y,Float:Z;
    new x=0;


    GetMyPos(X,Y,Z);
    GetXYInfrontOfMe(AHEAD_OF_CAR_DISTANCE,X,Y);


    while(x!=MAX_PLAYERS) {
    if(IsPlayerConnected(x) && IsPlayerStreamedIn(x)) {
    if( GetPlayerState(x) == PLAYER_STATE_DRIVER ||
    GetPlayerState(x) == PLAYER_STATE_ONFOOT )
    {
    if(GetPlayerVehicleID(x)<100) { return 0; }
    if(IsPlayerInRangeOfPoint(x,SCAN_RADIUS,X,Y,Z)) {
    return 1;
    }
    }
    }
    x++;
    }


    //new msg[256];
    //new Float:angle;
    //GetMyFacingAngle(angle);
    //format(msg,256,"My yaw/heading = %f",angle);
    //SendChat(msg);


    return 0;
    }



    //------------------------------------------


    public ScanTimer()
    {
    //new ticker = GetTickCount() - g_LastTick;
    //printf("npctest: timer (%d)ms", ticker);
    //g_LastTick = GetTickCount();


    new ReasonToPause = LookForAReasonToPause();


    if(ReasonToPause && !gStoppedForTraffic)
    {
    //SendChat("I'm pausing");
    PauseRecordingPlayback();
    gStoppedForTraffic = 1;
    }
    else if(!ReasonToPause && gStoppedForTraffic)
    {
    //SendChat("I'm resuming");
    ResumeRecordingPlayback();
    gStoppedForTraffic = 0;
    }
    }



    //------------------------------------------


    StartPlayback()
    {
    StartRecordingPlayback(PLAYER_RECORDING_TYPE_DRIVER,RECORDING);
    gStoppedForTraffic = 0;
    gPlaybackActive = 1;
    }



    //------------------------------------------


    public OnRecordingPlaybackEnd()
    {
    StartPlayback();
    }


    //------------------------------------------


    public OnNPCEnterVehicle(vehicleid, seatid)
    {
    StartPlayback();
    }


    //------------------------------------------


    public OnNPCExitVehicle()
    {
    StopRecordingPlayback();
    }


    //------------------------------------------