[SAMMELTHREAD] Kleine Scripting Fragen

Dein Problem konnte durch einen User gelöst werden? Bedank dich bei ihm indem du seinen Beitrag als Hilfreich markierst sowie einen Daumen oben dalässt
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
  • DAs hier ist mein Kickcommand !


    public OnPlayerCommandText(playerid, cmdtext[])
    {
    dcmd(kicken,6,cmdtext);


    return 0;
    }


    dcmd_kicken(playerid,params[]) {
    new
    sGrund[128],
    pID;
    if(sscanf(params, "ds",pID,sGrund)) {
    return SendClientMessage(playerid,COLOR_RED,"Benutzung: /kicken [playerid] [grund]");
    }
    if(!IsPlayerConnected(pID)) {
    return SendClientMessage(playerid,COLOR_RED,"Kein Spieler mit angegebener ID Online");
    }
    new
    ThePlayer[MAX_PLAYER_NAME],
    admin[MAX_PLAYER_NAME],
    kicknachricht[128];
    GetPlayerName(pID,ThePlayer,sizeof(ThePlayer));
    format(kicknachricht,sizeof(kicknachricht),"%s wurde von %s Server gekickt,Grund: %s",ThePlayer,admin,sGrund);
    SendClientMessageToAll(COLOR_BLACK,kicknachricht);
    Kick(pID);
    return 1;
    }



    funktioniert alles Prima aber bei


    format(kicknachricht,sizeof(kicknachricht),"%s wurde von %s Server gekickt,Grund: %s",ThePlayer,admin,sGrund);


    komm z.B. nur


    Tirus wurde von (>>>nichts O.o<< ) Server gekickt,Grund: Lern die rechtschraibung

  • Zitat von dablunkle

    "!Ich Bin Raus !"

  • Du holst dir auch nie den Usernamen des Spielers der den Command ausführt.

    //....
    new
    ThePlayer[MAX_PLAYER_NAME],
    admin[MAX_PLAYER_NAME],
    kicknachricht[128];
    GetPlayerName(pID,ThePlayer,sizeof(ThePlayer));
    GetPlayerName(playerid,admin,sizeof(admin)); // <---
    format(kicknachricht,sizeof(kicknachricht),"%s wurde von %s Server gekickt,Grund: %s",ThePlayer,admin,sGrund);
    SendClientMessageToAll(COLOR_BLACK,kicknachricht);
    Kick(pID);
    //...


  • Ist es möglich, einen Gang zu erstellen? Wenn man z.b. /gang1 eingibt, dass man dann nur maximal 50 KM/H fahren kann. Dachte an sowas mit SetPlayerVelocity.
    Und wenn man das nochmal eingibt, dass man dann wieder normal fährt!

    How do I post wrong?


    After successfully ignoring Google, the FAQ, Stickies and the Search button, I create two to five new threads in the wrong section, with creative titles and unclear text that everybody can imagine something different from.

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • danke!
    ...ixh hab auch schon ne neue fragen:
    1.ich weiß nicht wie ich mich als höchster admin auf meinem server einsetzt....
    2.ich hab mal in der benutzer datei ein paar sachen geändert: ua. geld auf der bank....wird das so verändert?
    3.mein server startet und schließt sich gleich wieder wenn ich godfather als gamemod ausgewählt hab!was kann ich da mchen
    danke für eure hilfe
    semi

  • public Heal(playerid)
    {
    for (new healing = 0; healing < MAX_PLAYERS; healing ++)
    { //Check all players


    if (playerToHeal[healing] == 1)
    { //if player is healing


    //Get Medic Position
    new Float:medicPosX[MAX_PLAYERS];
    new Float:medicPosY[MAX_PLAYERS];
    new Float:medicPosZ[MAX_PLAYERS];
    GetPlayerPos(playerid, medicPosX[playerid], medicPosY[playerid], medicPosZ[playerid]);


    if (PlayerInRange(10,healing, medicPosX[playerid], medicPosY[playerid], medicPosZ[playerid]))
    {
    new Float:healingHealth[MAX_PLAYERS]; //get current health
    healingHealth[healing] = GetPlayerHealth(healing, healingHealth[healing]);
    if(healingHealth[healing] < (80))
    {
    new string[128];
    format(string,sizeof(string),"healingHealth[healing] : %d",GetPlayerHealth(healing, healingHealth[healing]));
    SendClientMessageToAll(COLOR_WHITE,string);
    healingHealth[healing] = healingHealth[healing] + 10.0;
    SetPlayerHealth(healing, healingHealth[healing]); //add 10HP
    playerToHeal[healing] = 0; //player isn't healing anymore ( can be healed again )
    }
    }
    else
    {
    playerToHeal[healing] = 0; // player has gone away from the medic
    }
    }
    }


    }


    Meine Frage ist: wieso kommt bei GetPlayerHealth(healing, healingHealth[healing]) immer 1 ??? obwohls größer ist.

  • Weil GetPlayerhealth nicht die Energie des Spielers zurückgibgt, sondern 0 oder 1, je nachdem ob der Spieler connected ist oder nicht (-> IsPlayerConnected). Richtig müsste es also heissen
    GetPlayerHealth(healing, healingHealth[healing]); // speichere Energie in healingHealth[healing]
    format(string,sizeof(string) "%f", healingHealth[healing]); // formatiere string mit der Energie

  • Hab nochmal ne Frage.


    Irgendwie funktioniert das nicht mit dem FS Realtime und LVDM. Die Uhr von Realtime ist zwar zu sehen, aber dahinter ist die normale LVDM Uhr. Und die Uhrzeit wird auch an die LVDM Uhrzeit angepasst, d.h. wenn da jetzt z.B. 0:00 Uhr steht, ist es auch dunkel ?( Wie kann ich das ändern?

    How do I post wrong?


    After successfully ignoring Google, the FAQ, Stickies and the Search button, I create two to five new threads in the wrong section, with creative titles and unclear text that everybody can imagine something different from.

  • Liegt an der Funktion "TogglePlayerClock" im LVDM Script.


    Entweder du setzt den zweiten Parameter der Funktion auf 1 bzw. 0 (aufjedenfall das Gegenteil von dem was jetzt dort steht xD), oder du entfernst die Zeile komplett.

  • Weil GetPlayerhealth nicht die Energie des Spielers zurückgibgt, sondern 0 oder 1, je nachdem ob der Spieler connected ist oder nicht (-> IsPlayerConnected). Richtig müsste es also heissen
    GetPlayerHealth(healing, healingHealth[healing]); // speichere Energie in healingHealth[healing]
    format(string,sizeof(string) "%f", healingHealth[healing]); // formatiere string mit der Energie


    hmm geht immer noch nicht, er health tortzdem jeden der da ist

  • was ist daran falsch ?


    public antiwaffen(playerid)
    {
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    new waffen = GetPlayerWeapon(i);
    if(waffen == 9 || waffen == 10 || waffen == 11 || waffen == 12 || waffen == 13 || waffen == 14 || waffen == 15 || waffen == 17 || waffen == 18 || waffen == 26 || waffen == 27 || waffen == 28 || waffen == 32 || waffen == 34 || waffen == 37 || waffen == 38 || waffen == 39 || waffen == 40 || waffen == 41 || waffen == 42 || waffen == 43 || waffen == 44 || waffen == 45 && !IsPlayerAdmin(playerid))
    {
    new pname[MAX_PLAYER_NAME];
    new string[100];

    GetPlayerName(playerid, pname, sizeof(pname));
    format(string, sizeof(string), "-=[A.B.U.K.S.]=- %s wurde wegen WaffenHack gekickt!", pname);
    SendClientMessageToAll(COLOR_RED, string);
    Kick(i);
    }


    new leben = GetPlayerHealth(i);
    new rustung = GetPlayerArmour(i);
    if(leben >= 101 || rustung >= 101 && !IsPlayerAdmin(playerid))
    {


    new name[MAX_PLAYER_NAME];
    new string2[100];


    GetPlayerName(playerid, name, sizeof(name));
    format(string2, sizeof(string2), "-=[A.B.U.K.S.]=- %s wurde wegen Lebenhack gekickt!", name);
    SendClientMessageToAll(COLOR_RED, string2);
    Kick(i);
    }
    }
    return 1;
    }


    Errors


    C:\Users\Tirus\Desktop\samp03svr_RC8-1_win32\gamemodes\lvdm.pwn(356) : warning 202: number of arguments does not match definition
    C:\Users\Tirus\Desktop\samp03svr_RC8-1_win32\gamemodes\lvdm.pwn(357) : warning 202: number of arguments does not match definition