Beiträge von Akuba

    Hallo,
    ich hänge aktuell bei dem Fraktionsauto und habe ein Problem:


    ich finde keinen weg die Autos abzuschliessen.


    Zuerst mal zum FCarsystem:


    der aufbau ist:
    fraktionscar[FRAKTIONSID][AUTOID]


    z.b.
    fraktionscar[4][4] = das 5. Auto der 4. Fraktion


    Nun möchte ich das Fraktionsmitglieder das Auto öffnen/schliessen können, nur wie frage ich die Autos ab um zu prüfen ob der Spieler im auto sitzt?


    mfg, Abi

    else if (!strcmp(type, "park", true, 4))
    {
    if(!PlayerInfo[playerid][cars])
    {
    return SendClientMessage(playerid,COLOR_LIGHTRED,"[SYSTEM]: Du besitzt kein Auto.");
    }
    if(IsPlayerInAnyVehicle(playerid))
    {
    if(GetPlayerVehicleID(playerid) == PlayerInfo[playerid][cars])
    {
    return 0;
    }
    else
    {
    return SendClientMessage(playerid,COLOR_YELLOW,"[SYSTEM]: Du musst in deinen Auto sitzen.");
    }
    }
    else
    {
    return SendClientMessage(playerid,COLOR_YELLOW,"[SYSTEM]: Du musst in deinen Auto sitzen.");
    }
    new Float:px, Float:py, Float:pz, Float:pa;
    GetVehiclePos(PlayerInfo[playerid][cars], px, py, pz);
    GetVehicleZAngle(PlayerInfo[playerid][cars], pa);
    PlayerInfo[playerid][carx] = px;
    PlayerInfo[playerid][cary] = py;
    PlayerInfo[playerid][carz] = pz;
    PlayerInfo[playerid][cara] = pa;
    PlayerPlaySound(playerid, 1145, 0.0, 0.0, 0.0);
    new string[50];
    format(string, sizeof(string), "~w~Fahrzeug ~g~ Geparkt");
    GameTextForPlayer(playerid, string, 3000, 6);
    }

    funktioniert, nun hab ich ein paar warnings:
    new Float:px, Float:py, Float:pz, Float:pa; // warning 225: unreachable code
    GetVehiclePos(PlayerInfo[playerid][cars], px, py, pz);
    GetVehicleZAngle(PlayerInfo[playerid][cars], pa);
    PlayerInfo[playerid][carx] = px; // warning 213: tag mismatch
    PlayerInfo[playerid][cary] = py; // warning 213: tag mismatch
    PlayerInfo[playerid][carz] = pz; // warning 213: tag mismatch
    PlayerInfo[playerid][cara] = pa; // warning 213: tag mismatch


    wie kann ich die beheben?

    Ich hab ein kleines problem mit dcmd:
    new type[5];
    if(sscanf(params, "s",type)) {
    return SendClientMessage(playerid,COLOR_LIGHTRED,"USAGE: /car [lock/park/sell]");
    }
    if (type == "lock")
    {


    Die fehlermeldung lautet: error 033: array must be indexed (variable "type")


    was muss ich machen das es funktioniert? ^^

    Hiho,


    ich hab ein Problem mit demk Supportsystem. Nehme ich einen Report an, kackt der Server ab (Server hat exe)



    //CMD:support
    dcmd_support(playerid,params[]) {
    new
    sGrund[128];
    if(sscanf(params, "z",sGrund)) {
    return SendClientMessage(playerid,COLOR_LIGHTRED,"USAGE: /support [Text] - Sendet einen Report an alle Supporter");
    }
    if(PlayerInfo[playerid][support] == 1)
    {
    return SendClientMessage(playerid,COLOR_LIGHTRED,"[SYSTEM]: Du hast bereits einen Report gesendet. Gib /cancelhelp ein um den Report zu löschen.");
    }
    if(PlayerInfo[playerid][AdminLevel] >= 1)
    {
    return SendClientMessage(playerid,COLOR_LIGHTRED,"[SYSTEM]: Benutzte bitte /admin für fragen an Supporter.");


    }
    else
    {
    new
    ThePlayer[MAX_PLAYER_NAME],
    string[128],
    string2[128],
    string3[128],
    string4[128];
    GetPlayerName(playerid,ThePlayer,sizeof(ThePlayer));
    PlayerInfo[playerid][support] = 1;
    PlayerInfo[playerid][supporttext] = sGrund;
    new i;
    for(i=0;i<MAX_PLAYERS;i++)
    {
    if(PlayerInfo[i][AdminLevel] >= 1)
    {
    format(string,sizeof(string),"[REPORT von %s]: %s",ThePlayer,sGrund[0] ? sGrund : "<Kein Grund>");
    SendClientMessage(i,COLOR_YELLOW,string);
    format(string2,sizeof(string2),"[REPORT]: Benutzte /supporton %d um den Report zu bearbeiten.",playerid);
    SendClientMessage(i,COLOR_YELLOW,string2);
    }
    }
    format(string3,sizeof(string3),"[REPORT]: Dein Report wurde erfolgreich erstellt und in kürze bearbeitet.");
    SendClientMessage(playerid,COLOR_YELLOW,string3);
    format(string4,sizeof(string4),"[REPORT]: Gib /cancelhelp ein um den Report zu löschen.");
    SendClientMessage(playerid,COLOR_YELLOW,string4);
    }
    return 1;
    }



    //CMD:supporton
    dcmd_supporton(playerid,params[]) {
    new
    pID;
    if(sscanf(params, "d",pID)) {
    return SendClientMessage(playerid,COLOR_LIGHTRED,"USAGE: /supporton [PlayerID] - Du bearbeitest den Report von [PlayerID].");
    }
    if(!IsPlayerConnected(pID)) {
    return SendClientMessage(playerid,COLOR_LIGHTRED,"[SYSTEM]: Spieler ist nicht Online.");
    }
    if(PlayerInfo[playerid][AdminLevel] >= 1)
    {
    if(PlayerInfo[pID][support] == 1)
    {
    if(PlayerInfo[pID][supporton] == 0)
    {
    new ThePlayer[128], PlayerName[128];
    GetPlayerName(pID,ThePlayer,sizeof(ThePlayer));
    GetPlayerName(playerid,PlayerName,sizeof(PlayerName));
    SendClientMessage(playerid,COLOR_YELLOW,"[SUPPORT]: Du bearbeitest nun den Report von %s (ID %d).", ThePlayer, pID); //621
    SendClientMessage(playerid,COLOR_YELLOW,"[SUPPORT]: Mit /whisp %d kannst du auf den Report antworten.", pID);//622
    SendClientMessage(pID,COLOR_YELLOW,"[SUPPORT]: Dein Report wird nun von %s (ID %d) Bearbeitet.", PlayerName, playerid);//623
    PlayerInfo[pID][supporton] = 1;
    }
    else
    {
    SendClientMessage(playerid,COLOR_LIGHTRED,"[SYSTEM]: Der Report ist bereits in Bearbeitung.");
    }
    }
    else
    {
    SendClientMessage(playerid,COLOR_LIGHTRED,"[SYSTEM]: Von diesen User ist kein Report vorhanden.");
    }
    }
    else
    {
    return SendClientMessage(playerid,COLOR_LIGHTRED,"[SYSTEM]: Du bist kein Moderator.");
    }
    return 1;
    }


    1. CMD /support
    2. CMD /supporton (Fehlerbefehl)


    Pawno gibt folgene Meldungen aus:

    Zitat

    C:\server-samp\gamemodes\test.pwn(621) : warning 202: number of arguments does not match definition
    C:\server-samp\gamemodes\test.pwn(621) : warning 202: number of arguments does not match definition
    C:\server-samp\gamemodes\test.pwn(622) : warning 202: number of arguments does not match definition
    C:\server-samp\gamemodes\test.pwn(623) : warning 202: number of arguments does not match definition
    C:\server-samp\gamemodes\test.pwn(623) : warning 202: number of arguments does not match definition

    kann jemand einen hinweiß geben wieso der Server abstürzt wenn ich einen Report annehme?

    Der sinn dabei ist darin das die User sich darauf vorbereiten können. Auf einigen Servern gibt es auch um 4 einen Automatichen neustart mit 60 Sekunden countdown. so in etwa wollt ich das auch, nur halt zu jeder zwit ausführbar.

    Hallo,


    ich wollte mir ein kleines /gmx system schreiben was den server nah 30 sekunden automatich neu startet, leider Funktioniert der Timer nicht wirklich:
    //CMD:gmx
    dcmd_gmx(playerid) {
    if(PlayerInfo[playerid][AdminLevel] >= 9)
    {
    return SendClientMessage(playerid,COLOR_LIGHTRED,"[SYSTEM]: Du du hast einen GMX ausgelöst.");
    SetTimer("gmxtimer",1000,true);
    gmxab = 1;
    }
    else
    {
    return SendClientMessage(playerid,COLOR_LIGHTRED,"[SYSTEM]: Du bist kein Server Scripter.");
    }
    return 1;
    }
    der Befehl


    public gmxtimer()
    {
    new string[50], number, i;
    number = 31-gmxab;
    gmxab++;
    format(string, sizeof(string), "GMX: %s", number);
    for(i=0;i<MAX_PLAYERS;i++)
    {
    GameTextForPlayer(i, string, 1000, 6);
    }
    if(number == 0)
    {
    SendRconCommand("gmx");
    }
    return 1;
    }


    Das Timerscript selbst.


    Das Problem ist, das der Timer nicht startet, die Tim erzeile bringt auch einen Warning:
    warning 225: unreachable code


    ich habe leider keine ahnung was man da machen kann, hoffe iohr könnt mir weiterhelfen ^^


    mfg, Abi

    soweit ich weiß musst du die anfangszeile wo die klammer beginnt anklicken, dann strg + B und schauen ob das ergebniss die richtige klammer ist.


    fang am bestern in dem bereich an wo du was verändert hast.

    danke euch beiden, jetzt klappts :D


    Ein Problem hab ich noch:
    ich möchte ein Pickup umwandeln aber das geht nicht :/

    Code
    <map edf:definitions="editor_main">
    	<pickup id="pickup (health) (1)" type="health" interior="0" amount="100" respawn="30000" dimension="0" posX="756.173828125" posY="-1372.6630859375" posZ="13.54062461853" rotX="0" rotY="0" rotZ="0" />
    	<pickup id="pickup (armor) (1)" type="armor" interior="0" amount="100" respawn="30000" dimension="0" posX="756.18408203125" posY="-1370.7102050781" posZ="13.514408111572" rotX="0" rotY="0" rotZ="0" />
    </map>


    kann den code jemand in pawn umwandeln und evtl erklären wie man das macht.


    mfg, Abi

    Hallo,


    ich weiß das passt nicht wirklich hier rein, aber ich fand keinen besser geeigneten bereich :/.


    ich habe folgendes Problem:


    ich wollte mit MTA einfach die Objecte in Sa-MP einfügen, nur komme ich beim Konveterien nicht klar:
    http://wiki.sa-mp.de/Tutorial_Mapping


    der Ordner "map_editor" ist nicht vorhanden. und ich weiß nicht wo die maps sonst gespeichert sind.


    ich hoffe mir kann da jemand nen tipp geben wo ich suchen kann.


    MFG, Abi

    Hallo,


    ich wollte heute ein kleines ban System schreiben, wo man den Useraccount für eine bestimmte Zeit oder Permament bannen kann. Leider Funktioniert das nicht wirklich wenn ich den grund speichern möchte.


    //CMD:khmax
    dcmd_khmax(playerid,params[]) {
    new
    sGrund[128],
    pID;
    if(sscanf(params, "dz",pID,sGrund)) {
    return SendClientMessage(playerid,COLOR_LIGHTRED,"[USAGE]: /khmax [playerid] ([grund],optional) - Bannt [PlayerID] Permament vom Server.");
    }
    if(!IsPlayerConnected(pID)) {
    return SendClientMessage(playerid,COLOR_LIGHTRED,"[SYSTEM]: Kein Spieler mit angegebener ID Online");
    }
    new
    ThePlayer[MAX_PLAYER_NAME],
    string[128],
    pname[MAX_PLAYER_NAME];
    GetPlayerName(playerid, pname, sizeof(pname));
    GetPlayerName(pID,ThePlayer,sizeof(ThePlayer));
    format(string,sizeof(string),"[SYSTEM]: %s (ID %d) wurde von %s vom Server gebannt, Grund: %s",ThePlayer,pID,pname,sGrund[0] ? sGrund : "<Kein Grund>");
    SendClientMessageToAll(COLOR_LIGHTRED,string);
    // Ban und Grund speichern
    PlayerInfo[playerid][bant] = 1;
    new bangrund[128];
    if(!sGrund[0]) // Erster Error
    {
    bangrund = "<Kein Grund>";
    }
    else
    {
    bangrund = sGrund[0]; // Zweiter Error
    }
    PlayerInfo[playerid][bang] = bangrund;
    Kick(pID);
    logged[pID] = 0;
    return 1;
    }


    Die Fehlermeldung: C:\server-samp\gamemodes\test.pwn(312) : error 033: array must be indexed (variable "bangrund")
    C:\server-samp\gamemodes\test.pwn(314) : error 006: must be assigned to an array


    weiß jemand was man da machen kann? ich bin mit meiner Anfängerkenntniss am ende.

    Naja, ich wollte das eigentlich so machen das der Spieler seinen Standort speichern kann wo er dann wieder Spawnen möchte. Leider speichert er die punkte nicht stell ich gerade fest :/

    Hallo,


    ich hab mich heute mal an einen Gamemode mit Loginsystem versucht, habe aber folgendes Problem:
    nachdem ich mich eingeloggt habe und spawne hängt gta sa und es kommen grafikfehler.


    ich hab es nun versucht zu beheben, aber es klappte nicht.


    hier mal die stellen:


    Befehl: /register

    dini_IntSet(file, "spawnx", 1958.3783);
    dini_IntSet(file, "spawny", 1343.1572);
    dini_IntSet(file, "spawnz", 15.3746);
    dini_IntSet(file, "skin", 78);


    Befehl: /login



    // SPAWN:Player
    PlayerInfo[playerid][spawnx] = dini_Int(file, "spawnx");
    PlayerInfo[playerid][spawny] = dini_Int(file, "spawny");
    PlayerInfo[playerid][spawnz] = dini_Int(file, "spawnz");
    PlayerInfo[playerid][skin] = dini_Int(file, "skin");
    SetSpawnInfo( playerid, 0, PlayerInfo[playerid][skin], PlayerInfo[playerid][spawnx], PlayerInfo[playerid][spawny], PlayerInfo[playerid][spawnz], 0, 0, 0, 0, 0, 0, 0 );
    //SPAWN:Car


    ich habe keine classen im script. RequestClass sieht dann wie folgt aus:
    public OnPlayerRequestClass(playerid, classid)
    {
    return 0;
    }


    ich habe keine ahnung was daran falsch ist, hier noch der error beim Register:


    Zitat

    C:\server-samp\gamemodes\test.pwn(150) : warning 213: tag mismatch
    C:\server-samp\gamemodes\test.pwn(151) : warning 213: tag mismatch
    C:\server-samp\gamemodes\test.pwn(152) : warning 213: tag mismatch


    ich hoffe mir kann bei diesen problem jemand einen tipp zur lösung geben.


    mfg, Absol

    ok, Befehl geht nun, nur beim Object gibt es Probleme:
    new lspdtor = "";
    public OnGameModeInit()
    {
    // Don't use these lines if it's a filterscript
    SetGameModeText("Script Test");
    AddPlayerClass(3, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
    lspdtor = CreateObject(975, 1588.8592529297, -1638.1046142578, 14.098878860474, 0, 0, 0);
    CreateObject(968, 1544.6948242188, -1630.7711181641, 12.87956237793, 0, 0, 90);
    return 1;
    }
    ich hab das lspdtor aushalb gesetzt, da es in der gamemodeinit nicht weiter benutzt werden konnte, ging nicht, so leider auch nicht.

    Hiho,


    ich wollte gerade ein Tor einfügern was sich auf befehl öffnet, leider stürzt Pawno immer bei diesen Codeabschnitt ab.
    Der Befehl:
    if(strcmp(cmdtext, "/mv", true) == 0)
    {
    if (lspdtor_zu == 1)
    {
    lspdtor_zu = 0;
    MoveObject(lspdtor, 1596.8583984375, -1638.1046142578, 14.098878860474, 1.0);
    }
    else
    {
    lspdtor_zu = 1;
    MoveObject(lspdtor, 1588.8592529297, -1638.1046142578, 14.098878860474, 1.0);
    }
    return 1;
    }
    Der abschnitt in der GameModeInit:
    new lspdtor = CreateObject(975, 1588.8592529297, -1638.1046142578, 14.098878860474, 0, 0, 0);
    new lspdtor_zu = 1;
    wenn ich diese abschnitte rausnehme und Kompiliere, geht alles.