Beiträge von myu

    GetVehiclePos(407, PosX, PosY, PosZ);


    Du weißt schon das du nur nach der Position von dem Vehicle mit ID 407 frägst ?


    Du bräuchtest eine Schleife , um alle Vehicles durchzuloopen, und für die Z Taste reicht die vor-definierte define KEY_OK

    Die Logik, von deinen System ist nicht gerade sauber aber wo erstellst du die Vehicles ?


    if(FraktionsCars[i][0] != 22)


    müsstest du eig, aus der Enum entnehmen also


    if(FraktionsCars[i][Fraktion] != 22)

    RemoveBuildingforPlayer(playerid -> In OnPlayerConnect


    aber falls du was hinzufügen willst brauchse noch die Objekte ?


    Die CreateObject, etc kommen unter OnGameModeInit

    samp-server.exe / samp03svr
    samp-npc
    announce


    Am besten den ganzen ordner :D Und das Script re-compilen was ist daran so schwer ?

    Ich habe bisher auch nur schlechtest und Kindisches verhalten miterlebt, mann kann diesen Server keine Community nennen sondern einfach nur zusammen geklaute, Scripts und andere sachen.


    Sowie legt das ganze "Team" in meinen augen ein kindisches verhalten da.

    Copy&Paste fail :)
    Bitte lern auch mal was selbst zu schreiben hier ...


    stock StripNewLine(string[]){
    new len=strlen(string);
    if(string[0]==0) return ;
    if((string[len-1]=='\n')||(string[len - 1]=='\r')){
    string[len - 1] = 0;
    if(string[0]==0) return ;
    if((string[len-2]=='\n')||(string[len-2]=='\r')) string[len-2]=0;
    }
    }

    koffer = CreatePickup(1210,1,-2059.4771, 306.2885, 35.3435,-1);




    Probier mal dies mit Pickup Type 1 (2 -> Löscht ihn und respawnt ihn nach einer Zeit)
    Ich persöhnlich hatte damit nie probleme, aber wenn hab ich es einfach auf "dauerhaft" gemacht dann gings wieder, woran dieses problem lag war mir in den moment egal xD

    Es ist wohl kaum möglich mehr als 1 Auto innerhalb von 1ner Sekunde zu betrete, alleine wegen den Animationen ...


    IN OnPlayerEnterVehicle speicherst du in eine Variable wann er zuletzt in einen Auto war, bzw speicherst die Zeit


    Und wenn der Abstand der zeit größer als ein gegebener wert ist , dann kick/ban ...


    Aber die aussage mit OnPlayerEnterVehicle war ein bisschen falsch von mir (facepalm)


    Du musst OnPlayerStateChange benutzen ...


    Neue Beispiel:.
    pvar lastenter (pvar = privatevar)
    OnPlayerStateChange->PlAYER_STATE_DRIVER-> lastenter = GetTickCount
    OnPlayerStateChange->OldState_PLAYER_STATE_DRIVER->GetTickCount()-lastenter < Die zeit wo du noch rausfinden musst ich würde für den anfang 190 oder mehr sagen...


    Ban falls du davon nichts verstehst dann mach mal ansetze und ich helfe dir dann

    Also, sowas kriegst du ambesten raus wenn du den Abstand zwischen den Betreten von den Autos abfrägst also:


    Var -> LastEnter
    OnPlayerEnterVehicle -> LastEnter = GetTickCount
    OnPlayerEnterVehicle -> LastEnter -> Eine zeit die du selbst rausfinden musst D:


    Wenn das betreten zB schneller als 2 Autos in 1 Sekunde ist kick/ban whatever wenn das zuwenig erklärung ist erläutere mir was du nicht verstehst ^^

    Wie oben schon gesagt, versuch ein bisschen zu debuggen...


    public OnGameModeInit()
    {
    koffer = AddStaticPickup(1210,2,-2059.4771, 306.2885, 35.3435);
    printf("Koffer: %d", int:koffer);
    return 1;
    }

    public OnPlayerPickUpPickup(playerid, pickupid)
    {
    printf("Pickup: %d", int:pickupid);

    if(pickupid == koffer)
    {
    print("Picked up");
    }
    return 1;
    }


    Ein bisschen helfestellung, es kann sein das es sich mit anderen nicht zugeteilen Pickups überschneidet ..
    Deshalb probiere einfach mal die "ID/ZAHL" wie man es nennen will, auszugeben und dadurch an informationen zu kommen ^^
    Und für OnPlayerPickUpPickup immer CreatePickup verwenden : D

    Wie ich schon im Teamspeak³ erwähnt hatte, brauchst du die "Datenbank" ID, von deinen Auto die musst du zwischenspeichern, in deiner vehicleinfo whatever enum.


    Dann halt alle Autos durch "loopen" die überhaupt eine Datenbank ID gesetzt haben dann halt mit hilfe der Datenbank id mit den Update syntax den eintrag bearbeiten ...

    Ich persöhnlich habe noch einen alten PC von one.de hier er hält schon 3 Jahre, das einzigste Teil was ich ausgetauscht hatte war das Mainboard weil ich mir die inboard grafikkarte zerfickt hatte indem jemand über mein Kabel gestoplert ist ^^


    Ich hatten nie probleme auch bei einer neueren "Notebook" bestellung hatte ich auch keine probleme

    Wie währe es ob du überprüfst ob eine Zahl vorhanden ist wenn ja -> Fehler ... ?


    Er sucht ja den ganzen String nach 0->9 durch also einfach if(IsNumeric(string)) return print("fail");


    /E:
    Oder mach einfach eine Blacklist "Table" wo du alle Zeichen reinhaust wo nicht erlaubt werden sollten...
    Ein bisschen eigen initiative währe doch gut xD