[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 ist es ja
    wenn ich dann in einer Fraktion bin wo ich Rank 0 bin, kann ich den Chat nicht nutzen
    Daher hab ich ja das got genommen damit er direkt runterspringt


    Mach es doch einfach so:


    if(PlayerInfo[playerid][President]==1)format(msg,sizeof msg,">> Präsident %s: %s",PlayerInfo[playerid][Name],msg);
    else if ((PlayerInfo[playerid][Team] == tNews && PlayerInfo[playerid][Rank] > 5) ||
    (PlayerInfo[playerid][Team] == tMedic && PlayerInfo[playerid][Rank] > 2) ||
    (PlayerInfo[playerid][Team] == tFeuer && PlayerInfo[playerid][Rank] > 2) ||
    (PlayerInfo[playerid][Team] == tOa && PlayerInfo[playerid][Rank] > 1) ||
    (PlayerInfo[playerid][Team] == tCop && PlayerInfo[playerid][Rank] > 1) ||
    (PlayerInfo[playerid][Team] == tFahrschule && PlayerInfo[playerid][Rank] > 2)) format(msg,sizeof msg,">> %s %s: %s",TeamRank[PlayerInfo[playerid][Team]][PlayerInfo[playerid][Rank]],PlayerInfo[playerid][Name],msg);

    "Bevor ich mir Informationen aus der "Bild" hole,
    werde ich anfangen, Wahlergebnisse danach vorauszusagen,
    neben welchen Busch unsere Katze gepinkelt hat."

    Margarete Stokowski


  • Sry für die dumme frage, aber Map Editor? Muss ich das noch extra runterladen? :D


    /e ach jetzt gecheckt :D


    Map Editor haste zwar schon :D


    Und dann halt den Code bei OnGameModeInit einfügen.


    Jo, habs im nachhinein gecheckt, habs ja editiert :D


    Ich bekomm folgende Warnings, die ich nicht ganz checke :D


    C:\Dokumente und Einstellungen\xxx\Desktop\Pawno\gamemodes\Selfmade.pwn(140) : warning 217: loose indentation
    C:\Dokumente und Einstellungen\xxx\Desktop\Pawno\gamemodes\Selfmade.pwn(157) : warning 217: loose indentation
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    2 Warnings.

  • Eine kleine Frage bezogen auf mein Thema Standard Mysql Funktionen erweitern:


    Und zwar wurde mir dort geraten keine Stocks zu benutzen um Werte aus der Tabelle auszulesen, da dies mein Server enorm verlangsamt.
    Soll ich nun also den Code im Stock anstelle vom Stock nutzen? Das wäre übelst aufwenig aber wenns wirklich wahr ist würde ich das natürlich machen.


    Also Vergleich Vorher:
    Fraktionen[i][Drogen] = mysql_GetInt("Fraktionen", "Drogen", "Frakname", Fraktionen[i][Frakname]);


    stock mysql_GetInt(Table[], Field[], Where[], Is[])
    {
    new query[128];
    mysql_real_escape_string(Table, Table);
    mysql_real_escape_string(Field, Field);
    mysql_real_escape_string(Where, Where);
    mysql_real_escape_string(Is, Is);
    format(query, 128, "SELECT `%s` FROM `%s` WHERE `%s` = '%s'", Field, Table, Where, Is);
    mysql_query(query);
    mysql_store_result();
    new sqlint = mysql_fetch_int();
    mysql_free_result();
    return sqlint;
    }
    Nachher:
    new query[128], sqlint;
    format(query, 128, "SELECT Drogen FROM Fraktion WHERE Frakname = '%s'", Fraktionen[i][Frakname]);
    mysql_query(query);
    mysql_store_result();
    sqlint = mysql_fetch_int();
    mysql_free_result();
    Fraktionen[i][Drogen] = sqlint;


    Habe ich das so richtig verstanden?

  • Syno:



    Ich habs jetzt endlich geschafft, danke ;)




    Nun noch ein Problem. Undzwar, habe ich das jetzt gemacht, das als
    3DTextLabel auf den einzelnen Bike's stehen, wieviel sie kosten...


    Jedoch, wenn ich das Bike wegbewege, bleibt der 3D Text weiterhin an der gleichen Stelle.


    Kann man irgendwie scripten, das das Bike NICHT wegbewegbar ist?


    oder kann man das i.wie machen, das die Schrift mit dem Bike gleichzeitig verschwindet?




    Bitte um hilfe :)




    Und Sry, das ich die ganze Zeit frage :D Bin halt noch anfänger ;)


    Und bitte, keine Wiki scripting hilfe da :D

  • Ich brauch mal wieder ein Rat
    bcmd:handy(playerid,params[])
    {
    if(PlayerInfo[playerid][Logged]!=1)
    return SendClientMessage(playerid,cRed,"Du bist nicht eingeloggt!");
    if(PlayerInfo[playerid][Gemutet]!=0)
    return SendClientMessage(playerid,cWarn,"Du bist gemutet!");
    new string[512], query[128];
    format(string,sizeof string,"Jemanden anrufen\nSMS schreiben");
    format(query,sizeof query,"SELECT * FROM `SMS` WHERE `Name` = '%s'",PlayerInfo[playerid][Name]);
    mysql_query(query, (-1), (0), SQL);
    mysql_store_result(SQL);
    new fuckhandy = mysql_num_rows(SQL);
    new data[8][100],Typ[8][MAX_PLAYER_NAME];
    for(new i;i<fuckhandy;i++)
    {
    mysql_fetch_row(query, "|", SQL);
    mysql_fetch_field(data[i],"txt",SQL);
    mysql_fetch_field(Typ[i],"abs",SQL);
    format(string,sizeof string,"%s\nSMS: %s: %s",string,Typ[i],data[i]);
    }
    mysql_free_result(SQL);
    ShowPlayerDialog(playerid,diaHandy,DIALOG_STYLE_LIST,"Handy",string,"Wählen","Abbruch");
    return 1;
    }
    der Fetch Row gibt mir diese Fehler aus
    [Thu Mar 14 08:35:47 2013] Error (1): Function: mysql_fetch_field could not find field name: "NULL".
    [Thu Mar 14 08:35:47 2013] Error (1): Function: mysql_fetch_field could not find field name: "NULL".

    All in all it's just another brick in the wall

  • Ich steh gerade aufm Schlauch
    bcmd:handy(playerid,params[])
    {
    if(PlayerInfo[playerid][Logged]!=1)
    return SendClientMessage(playerid,cRed,"Du bist nicht eingeloggt!");
    if(PlayerInfo[playerid][Gemutet]!=0)
    return SendClientMessage(playerid,cWarn,"Du bist gemutet!");
    new string[512], query[128];
    format(string,sizeof string,"(Jemanden anrufen)\n(SMS schreiben)");
    format(query,sizeof query,"SELECT * FROM `SMS` WHERE `Name` = '%s'",PlayerInfo[playerid][Name]);
    mysql_query(query, (-1), (0), SQL);
    mysql_store_result(SQL);
    new fuckhandy = mysql_num_rows(SQL);
    new data[100],Typ[MAX_PLAYER_NAME];
    for(new i;i<fuckhandy;i++)
    {
    mysql_fetch_field("txt",data,SQL);
    mysql_fetch_field("abs",Typ,SQL);
    format(string,sizeof string,"%s\nSMS: %s: %s",string,Typ,data);
    }
    mysql_free_result(SQL);
    ShowPlayerDialog(playerid,diaHandy,DIALOG_STYLE_LIST,"Handy",string,"Wählen","Abbruch");
    return 1;
    }
    Wenn ich 2 SMS in der Tabelle habe, steht das in den Dialog:


    Jemanden Anrufen
    SMS Schreiben
    SMS: Susi: Hi
    SMS: Susi: Hi


    statt:


    Jemanden Anrufen
    SMS Schreiben
    SMS: Susi: Hi
    SMS: Peter: Hi


    Wiso?
    Irgendwie macht mich das gerad stutzig

    All in all it's just another brick in the wall

  • mal ne kleine und wahrscheinlich ziemlich simple Frage.


    ocmd:wartung(playerid,params[])
    {
    SendPlayerMessageToAll( "i1234abcde");
    SendClientMessageToAll(COLOR_RED, "i1234abcde");
    return 1;
    }


    Wenn ich SendPlayerMessageToAll verwende funktioniert es nur das sich hier keine Schriftfarbe definieren lässt, bei SendClientMessageToAll würde es theoretisch funktionieren nur kann ich SendClientMessageToAll anscheinend hier nicht nutzen oder es wird zumindest nichts ausgegeben.


    Mfg Zyan

  • Richtig?


    Da ich jetzt keinen zu testen habe wollte ich mal fragen ob das so richtig ist?
    Wenn jetzt ein Cop connected soll über jedem spieler der Wanteds hat ein Label attached werden, dieses Label kann dann nur der COp sehen?


    if(IsACop(playerid))
    {
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(GetPlayerWantedLevel(playerid) > 1)
    {
    new Wanteds[24], Float:Pos[3];
    format(Wanteds,sizeof(Wanteds),"Wanteds: %d",GetPlayerWantedLevel(playerid));
    GetPlayerPos(i,Pos[0],Pos[1],Pos[2]);
    WantedText[playerid] = CreatePlayer3DTextLabel(playerid, Wanteds, 0x9B0000FF, Pos[0], Pos[1], Pos[2], 20.0, 1, 0, 1);
    }
    }
    }