Beiträge von Jeffry

    Du setzt das "Found" nie auf einen anderen Wert als 0.
    Am besten du machst es etwas einfacher, so:
    cmd:aufbrechen(playerid,params[])
    {
    if(!IstSpielerInFrak(playerid,5)) return SendClientMessage(playerid,COLOR_RED,"Du bist nicht beim ADAC!");
    new Float:vX, Float:vY, Float:vZ, p_vid = GetPlayerVehicleID(playerid);
    for(new vid = 0; vid < MAX_VEHICLES; vid++)
    {
    if(vid == p_vid) continue;
    GetVehiclePos(vid,vX,vY,vZ);
    if(GetPlayerDistanceFromPoint(playerid, vX, vY, vZ) < 7.0)
    {
    PutPlayerInVehicle(playerid, vid, 0);
    return SendClientMessage(playerid, COLOR_GREEN, "Du hast das Fahrzeug aufgebrochen");
    }
    }
    return SendClientMessage(playerid, COLOR_RED, "Es befindet sich kein Fahrzeug in der Nähe!");
    }

    Ja, nach dem gleichen Prinzip wie in dem Tutorial:
    public AlleHauserSpeichern()
    {
    new query[256];
    for(new i=0; i<MAX_PLAYER_HAUS; i++)
    {
    if(Hauser[i][IntID] >= 1 && Hauser[i][IntID] <= 19)
    {
    //Und wir erstellen das Query:
    format(query, sizeof(query), "UPDATE Hauser SET IntID = '%d', H_X = '%f', H_Y = '%f', H_Z = '%f', H_R = '%f', Besitzer = '%d' WHERE ID = '%d'",
    Hauser[i][IntID], Hauser[i][H_X], Hauser[i][H_y], Hauser[i][H_Z], Hauser[i][H_R], Hauser[i][Besitzer], i);
    //handle = die Connection Handle ID die vor mysql_connect steht.
    mysql_tquery(handle, query);
    }
    }
    return 1;
    }


    (Gegebenenfalls %f zu %d ändern, wenn du die Positionen als Integer speicherst.)

    Am Ende der Zeile muss ein Backslash stehen, wenn du im String im Quellcode eine neue Zeile anfängst.
    public OnPlayerPickUpPickup(playerid, pickupid)
    {
    if(pickupid == smweapon)
    {
    ShowPlayerDialog(playerid, Dialog_Weapons, DIALOG_STYLE_LIST,"Waffen:","Messer 100$\nRosen Gratis\
    \nMolotov Cocktail 10x 10.000$\nMP5 200x 10.000$\nSniper 20x 10.000$\nRPG 10x 100.000$\
    \nHaftbombe 10x 100.000$","Accept","decline");
    return 1;
    }
    return 1;
    }
    Außerdem hat am Ende eine Klammer und ein return gefehlt.

    Ahh, natürlich.
    So sollte es passen:
    CMD:mv(playerid, params[])
    {
    if(IsPlayerInRangeOfPoint(playerid, 10.0, 2260.21875, 2032.12817, 10.49372)) //Ordnungsamt Schranke
    {
    if(Spieler[playerid][pFraktion] != 1 && Spieler[playerid][pFraktion] != 5 && Spieler[playerid][pFraktion] != 3)return SendClientMessage(playerid, COLOR_GREY, "** Du bist kein Staatsbeamter.");
    static bool:OamtTorS;
    if(!OamtTorS)
    {
    MoveDynamicObject(OamtTor, 2260.21875, 2032.12817, 10.49372, 0.02, 0.00000, 0.00000, 0.00000);
    OamtTorS = true;
    }
    else
    {
    MoveDynamicObject(OamtTor, 2260.19238, 2032.12610, 10.52340, 0.02, 2.93070, -90.20000, 0.90000);
    OamtTorS = false;
    }
    }
    return 1;
    }


    Du hattest die Objekt-Variable in der Abfrage verwendet, ist mir auch nicht aufgefallen.

    26errors aber habe vor dem return 1; noch ne klammer weg gemacht dann kamen keine errors.

    Dann hast du vergessen eine Klammer am Ende zu ersetzen, so wie beim Post, da hat nämlich auch eine gefehlt.



    gibt es noch ne bessere version den getöteten spieler wieder in die arena zu moven

    Ja, bei OnPlayerSpawn abfragen, ob der Spieler in der Arena ist, wenn ja, SetPlayerPos.
    Dann ist er direkt wieder drin, wenn die Tot-Kamera vorbei ist.

    Versuche es so:
    Function OnPlayerDeath(playerid, killerid, reason)
    {
    M_OnPlayerDeath(playerid,killerid,reason);
    if(impb[playerid] == 1)
    {
    SetTimerEx("pbweiter", 4000, false, "i", playerid);
    if(pbrang[playerid] == 1)
    {
    ResetPlayerWeapons(playerid);
    GivePlayerWeapon(playerid, 24, 500);
    SetPlayerHealth(playerid,100);
    SetPlayerArmour(playerid,100);
    }
    else if(pbrang[playerid] == 2)
    {
    ResetPlayerWeapons(playerid);
    GivePlayerWeapon(playerid, 25, 500);
    SetPlayerHealth(playerid,100);
    SetPlayerArmour(playerid,100);
    }
    }
    if(killerid != INVALID_PLAYER_ID)
    {
    if(impb[killerid] == 1)
    {
    if(pbrang[killerid] == 1)
    {
    ResetPlayerWeapons(killerid);
    pbrang[killerid] = 2;
    GivePlayerWeapon(killerid, 25, 500);
    GameTextForPlayer(killerid, "~r~>>>Waffenbeförderung<<<", 1000,4);
    }
    }
    }
    return 1;
    }

    Jein (in diesem Fall würde es sogar klappen, aber wenn eine weitere Schranke dazu kommt nicht mehr), wenn du es innerhalb haben willst, dann wäre es so korrekt:
    CMD:mv(playerid, params[])
    {
    if(IsPlayerInRangeOfPoint(playerid, 10.0, 2260.21875, 2032.12817, 10.49372)) //Ordnungsamt Schranke
    {
    if(Spieler[playerid][pFraktion] != 1 && Spieler[playerid][pFraktion] != 5 && Spieler[playerid][pFraktion] != 3)return SendClientMessage(playerid, COLOR_GREY, "** Du bist kein Staatsbeamter.");
    if(OamtTor == 0)
    {
    MoveDynamicObject(OamtTor, 2260.21875, 2032.12817, 10.49372, 0.02, 0.00000, 0.00000, 0.00000);
    OamtTor = 1;
    }
    else if(OamtTor == 1)
    {
    MoveDynamicObject(OamtTor, 2260.19238, 2032.12610, 10.52340, 0.02, 2.93070, -90.20000, 0.90000);
    OamtTor = 0;
    }
    }
    return 1;
    }

    Versuche es so:
    CMD:mv(playerid, params[])
    {
    if(Spieler[playerid][pFraktion] != 1 && Spieler[playerid][pFraktion] != 5 && Spieler[playerid][pFraktion] != 3)return SendClientMessage(playerid, COLOR_GREY, "** Du bist kein Staatsbeamter.");
    if(IsPlayerInRangeOfPoint(playerid, 10.0, 2260.21875, 2032.12817, 10.49372)) //Ordnungsamt Schranke
    {
    if(OamtTor == 0)
    {
    MoveDynamicObject(OamtTor, 2260.21875, 2032.12817, 10.49372, 0.02, 0.00000, 0.00000, 0.00000);
    OamtTor = 1;
    }
    else if(OamtTor == 1)
    {
    MoveDynamicObject(OamtTor, 2260.19238, 2032.12610, 10.52340, 0.02, 2.93070, -90.20000, 0.90000);
    OamtTor = 0;
    }
    }
    return 1;
    }


    Verändere die 0.02 (Speed) falls es zu langsam/schnell ist.

    Du musst die Rotation der Schranke auch mit angeben, wenn diese sich verändern soll.
    Wenn es nur die Rotation ist, die sich ändert, dann musst du das Objekt ganz langsam minimal bewegen.


    Poste bitte mal die Koordinaten von:
    Schranke offen
    Schranke zu


    Jeweils als CreateDynamicObject-Code (im Map Editor einmal offen und einmal zu erstellen).

    Ok. Textdokument = Dini?


    Wenn ja, dann versuche doch mal, dich an diesem Tutorial ([jTuT] Fraktions-Fahrzeug-System mit Dini 1.6) entlang zu hangeln. Du musst nur Teile davon übernehmen (z.B. ein Timer um alles zu Speichern brauchst du ja nicht, oder einen /parken Befehl).


    Was zu eigentlich erst mal brauchst:
    Lade-Funktion bei OnGameModeInit
    Erstellen Befehl
    (gegebenenfalls Löschen Befehl)


    Dinge wie Model und Fraktion kannst du alles weg lassen, du brauchst ja nur die Koordinaten.
    Fange am besten so an, dass du eine Datei manuell erstellst, mit den Koordinaten des ersten Pakets, dann erstellst du die Lade-Funktion, und wenn die klappt, den Befehl zum Erstellen von Paketen. Danach dann den zum Löschen, falls gewünscht.


    Versuche mal ob du damit klar kommst.

    Das Problem liegt hier:
    if(PlayerInfo[i][pReady] = 1)continue;


    Das müsste dir auch eine Warnung 211 geben (possibly unintended assignment) [=Möglicherweise ungewollte Zuweisung].


    Ändere das zu:


    if(PlayerInfo[i][pReady] == 1) continue;


    Das war somit auch das Problem, dass alle Spieler immer bereit waren.

    Alternativ kannst du, wenn du die ganzen SetPlayerPos' schon bei OnPlayerSpawn drin hast, auch einfach bei
    //Spieler aus dem Jail lassen.
    das machen:
    SpawnPlayer(i);


    Das würde dann auf's gleiche raus kommen, hättest den Code halt dann nicht doppelt da stehen.

    Ist mir zuvor am Handy nicht aufgefallen, dass du die Falschen Anführungszeichen nutzt, so passt es:
    CreateHVTable()
    {
    new query[512];
    format(query,sizeof(query),"CREATE TABLE IF NOT EXISTS `HAUSER` (");
    format(query,sizeof(query)," %s `ID` int(12) NOT NULL PRIMARY KEY, ",query);
    format(query,sizeof(query), " %s `IntID` int(11) NOT NULL DEFAULT '0',",query);
    format(query,sizeof(query), " %s `H_X` float NOT NULL DEFAULT '0'," ,query);
    format(query,sizeof(query), " %s `H_Y` float NOT NULL DEFAULT '0'," ,query);
    format(query,sizeof(query), " %s `H_Z` float NOT NULL DEFAULT '0'," ,query);
    format(query,sizeof(query), " %s `H_R` float NOT NULL DEFAULT '0'," ,query);
    format(query,sizeof(query), "%s `Mieter` int(11) NOT NULL DEFAULT '0',",query);
    format(query,sizeof(query), "%s `Mietpreis` int(11) NOT NULL DEFAULT '0',",query);
    format(query,sizeof(query)," %s `Hauskasse` int(11) NOT NULL DEFAULT '0')",query);
    mysql_tquery(handle,query);
    return 1;
    }


    Außerdem hattest du dich bei DEFAULT mal verschrieben.