[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
  • Warum folgender Error:
    [18:37:13] CMySQLHandler::Query(UPDATE `users` SET `Key`='123456', `Level`='1', `AdminLevel`='0', `DonateRank`='0', `UpgradePoints`='0', `ConnectedTime`='0', `Registered`='1', `Sex`='0', `Age`='0', `Origin`='1', `Muted`='0', `Respect`='0', `Money`='10000', `Bank`='10000', `Allowed`='0', `wgs`='0', `Crimes`='0', `Kills`='0', `sKills`='0', `Deaths`='0', `Arrested`='0', `ArrestTime`='0', `PhoneBook`='0', `LottoNr`='0', `Fishes`='0', `BiggestFish`='0', `Job`='0', `Paycheck`='0' WHERE `Name`='Heavengeqf11') - Successfully executed.
    [18:37:13] >> mysql_query( Connection handle: 1 )
    [18:37:13] CMySQLHandler::Query(UPDATE `users` SET `HeadValue`='0', `Jailed`='0', `JailTime`='0', `Leader`='-1', `Member`='-1', `Rank`='0', `Skin`='101', `Vertragszeit`='0', `DetSkill`='0', `LawSkill`='0', `MechSkill`='0', `JackSkill`='0' WHERE `Name`='Heavengeqf11') - Successfully executed.
    [18:37:13] >> mysql_query( Connection handle: 1 )
    [18:37:13] CMySQLHandler::Query(UPDATE `users` SET `CarSkill`='0', `NewsSkill`='0', `DrugsSkill`='0', `CookSkill`='0', `FishSkill`='0', `pSHealth`='50.0', `PhoneNr`='0', `House`='-1', `Swat`='0', `Biz`='-1', `CarLic`='0', `FlyLic`='0', `BoatLic`='0', `FishLic`='0', `GunLic`='0', WHERE `Name`='Heavengeqf11') - An error has occured. (Error ID: 1064, You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE `Name`='Heavengeqf11'' at line 1)

  • Beitrag von Apokrate ()

    Dieser Beitrag wurde gelöscht, Informationen über den Löschvorgang sind nicht verfügbar.
  • Beitrag von Apokrate ()

    Dieser Beitrag wurde gelöscht, Informationen über den Löschvorgang sind nicht verfügbar.
  • Beitrag von Apokrate ()

    Dieser Beitrag wurde gelöscht, Informationen über den Löschvorgang sind nicht verfügbar.
  • Beitrag von Apokrate ()

    Dieser Beitrag wurde gelöscht, Informationen über den Löschvorgang sind nicht verfügbar.
  • kurz eine kleine Frage:
    if(GetPlayerScore(playerid)==0)return SetPlayerScore(playerid,1);
    SetPlayerScore(playerid,cache_get_field_content_int(0,"level",dbverbindung));


    Wenn das Lvl nicht gleich 0 ist möchte ich es auf 1 setzen,
    aber egal ob es lvl 0,1,2... ist möchte ich das was darunter steht ausführen.


    So wie ich das jetzt habe wird ja nur das nach dem return ausgeführt wenn der Spieler Lvl 0 ist.



    Oder MUSS ich das dann ganz nach unten setzen?

  • if (!GetPlayerScore(playerid)) SetPlayerScore(playerid, 1);
    SetPlayerScore(playerid, cache_get_field_content_int(0, "level", dbverbindung));


    Allerdings verstehe ich den Sinn deines Vorhabens noch nicht so ganz. Wenn sowieso ein PlayerScore durch die SQL gesetzt wird, warum dann erst der umständliche Kram davor? :p


    Mein CS:GO Server: 62.75.168.39:27016


    Ich bin so hungrig, dass ich vor lauter Durst nicht weiß, was ich rauchen soll - so müde bin ich!
    Freedom is just another word for 'Nothing left to lose'

  • Ich habs so gemacht, dass beim einloggen das Level aus der Datenbank direkt ausgelesen wird.


    Jetzt war das Problem beim registrieren ist man ja Level 0 und da ich gleich nach dem Register den Login aufrufe dass er immer Level 0 aus der DB rauslädt.






    Noch eine Frage:
    public Onblabla
    {
    if(.........)
    {
    .....
    }
    else
    {
    if(GetPlayerScore(playerid)==0)return 1;
    }
    Wird das was hier steht dann noch ausgeführt?
    }



    Eigentlich wird das nach dem return ja nicht mehr ausgeführt, aber hier dann schon oder? Weil das return ja nur auf das was im else drin steht bezogen ist oder?


    also wenn unter dem if(GetPlayerScore(playerid)==0)return 1; direkt etwas steht wird das nicht ausgeführt richtig?

  • Wenn der Else-Block zutrifft und darin ein return vorkommt, wird danach NICHTS mehr ausgeführt. return = Callback zuende.
    Warum setzt du bei der Registration das Level nicht einfach direkt auf 1, an der Stelle, wo du den SQL-Eintrag für den User erstellst? Dafür kann SQL sowas ja extra :p


    Mein CS:GO Server: 62.75.168.39:27016


    Ich bin so hungrig, dass ich vor lauter Durst nicht weiß, was ich rauchen soll - so müde bin ich!
    Freedom is just another word for 'Nothing left to lose'

  • Beitrag von IceWave ()

    Dieser Beitrag wurde gelöscht, Informationen über den Löschvorgang sind nicht verfügbar.
  • Hallo,


    Wie macht man ein Skript z.B. Wenn man /auf macht geht das Auto auf und bei /zu Das Auto zu.
    -----------------------------
    Wie macht man, wenn ein Spieler die Taste '' N'' Drückt geht das Motor an und wenn man Wieder auf die Taste '' N'' drückt geht das Motor wieder aus.


    Danke schonmal im Vorraus.


    MFg
    SST

  • Hey leute, ich habe eine kleine Frage undzwar, was wenn mein format zu lange wird? ich bin gerade dabei Stats in Textdraws zu machen und wollte fragen ob ich das:
    format(string,sizeof string,"Privat:~n~----------~n~Name: ~g~%s~n~~w~Alter: ~g~%s~n~~w~Geschlecht: ~g~%d~n~~w~Level: ~g~%d~n~~w~Levelpunkte: ~g~%d~n~~w~Spawnenergie: ~g~%d~n~~w~Leben: ~g~%d"/*~n~~n~~n~~w~Arbeit:~n~----------~n~Beruf: ~g~%d~n~~w~Job: ~g~%d~n~~n~~n~~w~Geldverwaltung:~n~----------~n~Bargeld: ~g~%d~w~~n~Bankguthaben: ~g~%d~w~~n~"*/,SpielerName(playerid));


    Irgendwie in 2 Zeilen machen kann? aber es soll das selbe Format sein.


    //Habe es selbst hinbekommen.


    Mit freundlichen Grüßen



    Die heutigen Noobs, sind die Profis von morgen! :thumbup:


    Danke an Jeffry für seine ständige Hilfsbereitschaft und freundliche Art. 8)

    Einmal editiert, zuletzt von ENEF () aus folgendem Grund: Selbst geholfen

  • Yo ich hab ne Frage.
    Und zwar wenn ich /smokeweed mache das halt man immer 25% Armour dazu bekommt, wie mache ich dies?




    ocmd:smokeweed2(playerid, params[])
    {
    if(PlayerInfo[playerid][sWeed] > 0)
    {
    new Float:PlayersHealth;
    GetPlayerHealth(playerid, PlayersHealth);
    PlayerInfo[playerid][sWeed] -= 2;
    new sendername[MAX_PLAYER_NAME];
    GetPlayerName(playerid, sendername, sizeof(sendername));
    GiveNameSpace(sendername);
    SaveDrugs(playerid);
    }
    else
    {
    SendClientMessage(playerid, COLOR_WHITE, "* Du hast kein Weed mehr");
    }
    return 1;
    }

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen