Beiträge von Gurkie94

    Hallo ich habe mal eine Frage zu meinem Haussystem was auf Mysql arbeitet.


    ich habe erstmal ein befehl gebaut womit man ein haus erstellt.


    new hpreis,query[300];
    if(sscanf(params, "i", hpreis))return SendClientMessage(playerid, Gelb, "/sethaus [Preis]");
    new Float:X,Float:Y,Float:Z,Float:A;
    GetPlayerPos(playerid,X,Y,Z);
    GetPlayerFacingAngle(playerid,A);
    format(query,sizeof(query),"INSERT INTO haus (besitzer,preis,hposx,hposy,hposz,hposa) VALUES ('Statt','%i','%f','%f','%f','%f') ",hpreis,X,Y,Z,A-180);
    mysql_function_query(dbhandle,query,false,"","");


    so das funktioniert ja auch und in der tabelle wird dies auch angelegt.



    ich habe AUTO_INCREMENT drinne damit immer eine neue Id miterstellt wird .


    Meine frage ist jetzt wie finde ich heraus welche Id dieses haus jetzt belegt


    Ich habe nämlich gerade keine ahnung wie ich jetzt an die id von dem Haus komme was ich jetzt zuletzt erstellt habe .


    Ich hoffe ihr könnt mir folgen :D

    Hallo ich habe mal ne frage:


    Ich kann ja aus der id denn Name ableiden mit dem Stock SpielerName(playerid);


    kann ich auch aus denn namen die spieler id abfragen zb ist ein spieler mit dem Namen online?

    Schön peinlich :whistling:


    Der query war zu klein :D



    Okay aber mich würde noch was interessieren


    jetzt muss ich ja immer
    fInfo[i][rang1]


    oder



    fInfo[i][rang2]
    nutzen kann ich das nicht auch vereinfachern ?



    new rang=1;
    fInfo[i][rang]


    und später sucht er sich denn nur denn rang raus mit der zahl die dort eingetragen wir also 1=Rang1 usw.

    Ja da lag der Fehler :/



    Wie speicher ich das am besten ?


    format(query,sizeof(query),"UPDATE fraktion SET Rang1='%s' WHERE id='%i'",fInfo[fLeader][rang1],fInfo[fLeader][fraktionid]);
    mysql_function_query(dbhandle,query,false,"","");


    so funktioniert das nicht :/

    Ja weiß auch nich twarum er alles aufeinmal so zusammen geschoben hat


    na das problem ist das ich einen string hier reinsetzte


    format(fInfo[rangwahl][rang1], 30, "%s", inputtext);



    aber wenn ichj ihn auslese nix angezeigt wird


    format(string,sizeof(string),"Rang 1: %s\nRang 2: %s\nRang 3: %s\nRang 4: %s\nRang 5: %s\nRang 6: %s",fInfo[i][rang1],fInfo[i][rang2],fInfo[i][rang3],fInfo[i][rang4],fInfo[i] [rang5],fInfo[i][rang6]);

    Okay pass auf :D


    if(dialogid==DIALOG_Rangnamensetzten){if(response){if(strlen(inputtext)<4||strlen(inputtext)>20){ShowPlayerDialog(playerid,DIALOG_Rangnamensetzten,DIALOG_STYLE_INPUT,"{FF9600}Rangname","{D10000}Der Rangname muss Mindestens 4 und Höchstens 20 Buchstaben haben!","Fertig","Zurück");}else{new rangwahl=GetPVarInt(playerid,"rangwahl");if(rangwahl==1){format(fInfo[rangwahl][rang1], 30, "%s", inputtext);}if(rangwahl==2){format(fInfo[rangwahl][rang2], 30, "%s", inputtext);}if(rangwahl==3){format(fInfo[rangwahl][rang3], 30, "%s", inputtext);}if(rangwahl==4){format(fInfo[rangwahl][rang4], 30, "%s", inputtext);}if(rangwahl==5){format(fInfo[rangwahl][rang5], 30, "%s", inputtext);}if(rangwahl==6){format(fInfo[rangwahl][rang6], 30, "%s", inputtext);}rangdialog(playerid);}}else{rangdialog(playerid);}}


    Hier werden die nahmen denn gesetzt


    if(dialogid==DIALOG_Rangnamen){if(response){SetPVarInt(playerid,"rangwahl",0);if(listitem == 0){SetPVarInt(playerid,"rangwahl",1);ShowPlayerDialog(playerid,DIALOG_Rangnamensetzten,DIALOG_STYLE_INPUT,"{FF9600}Rangname", "{FFFFFF}Wie möchtest du diesen Rang nennen? (max.20 Zeichen)", "Fertig", "Zurück");}if(listitem == 1){SetPVarInt(playerid,"rangwahl",2);}if(listitem == 2){SetPVarInt(playerid,"rangwahl",3);}if(listitem == 3){SetPVarInt(playerid,"rangwahl",4);}if(listitem == 4){SetPVarInt(playerid,"rangwahl",5);}if(listitem == 5){SetPVarInt(playerid,"rangwahl",6);}}}


    Hier wähle ich aus welchen ich ändern will


    stock rangdialog(playerid){new string[500],str[50];new i=sInfo[playerid][leader];if(i==1){format(str,sizeof(str),"Police Department");}if(i==2){format(str,sizeof(str),"Bundeswehr");}if(i==3){format(str,sizeof(str),"Rettungsdienst");}if(i==4){format(str,sizeof(str),"Ordungsamt");}if(i==5){format(str,sizeof(str),"Media AG");}if(i==6){format(str,sizeof(str),"Grove Street");}if(i==7){format(str,sizeof(str),"Ballas");}if(i==8){format(str,sizeof(str),"Vagos");}if(i==9){format(str,sizeof(str),"LS Biker");}if(i==10){format(str,sizeof(str),"LCN");}if(i==11){format(str,sizeof(str),"Yakuza");}if(i==12){format(str,sizeof(str),"Atztecas");}format(string,sizeof(string),"Rang 1: %s\nRang 2: %s\nRang 3: %s\nRang 4: %s\nRang 5: %s\nRang 6: %s",fInfo[i][rang1],fInfo[i][rang2],fInfo[i][rang3],fInfo[i][rang4],fInfo[i][rang5],fInfo[i][rang6]);ShowPlayerDialog(playerid,DIALOG_Rangnamen,DIALOG_STYLE_LIST,str,string,"Weiter","Beenden");}


    das ist der stock wo das Dialog fenster denn aufgerufen wird wenn man den namen eingegeben hat


    @Kristik47


    @Jeffry kannst du helfen ?:)

    Also ich möchte das für die Fraktionen haben . So das der Leader Die Rangnamen ändern kann
    mann gibt /fraktion ein und denn soll der Dialog angezeigt werden wo die Namen stehen also:


    format(string,sizeof(string),"Rang 1: %s\nRang 2: %s\nRang 3: %s\nRang 4: %s\nRang 5: %s\nRang 6: %s",fInfo[i][rang1],fInfo[i][rang2],fInfo[i][rang3],fInfo[i][rang4],fInfo[i][rang5],fInfo[i][rang6]);ShowPlayerDialog(playerid,DIALOG_Rangnamen,DIALOG_STYLE_LIST,str,string,"Weiter","Beenden");


    wenn er jetzt zb auf Rang1 klickt im Dialog dann kommt ein Fenster wo mann den Namen eingibt und der Spieler kommt dann zurück in das Hier rüber gezeigte Dialog fenster hoffe es ist verständlich :D


    eigentlich soll ,fInfo[i][rang1] als string dienen für denn ersten rang usw.


    Später will ich das noch speichern aber dazu komme ich später :D

    Das gehört einfach nur zum Dialog


    format(string,sizeof(string),"Rang 1: %s\nRang 2: %s\nRang 3: %s\nRang 4: %s\nRang 5: %s\nRang 6: %s",fInfo[i][rang1],fInfo[i][rang2],fInfo[i][rang3],fInfo[i][rang4],fInfo[i][rang5],fInfo[i][rang6]);
    ShowPlayerDialog(playerid,DIALOG_Rangnamen,DIALOG_STYLE_LIST,str,string,"Weiter","Beenden");



    Hier wird es ja denn gesetzt ...
    format(fInfo[rangwahl][rang1], 30, "%s", inputtext);

    Danke


    Und denn ist es auch gleich in fInfo[rangwahl][rang1] eingesetzt?


    Weil wenn ich das ausgeben möchte
    format(string,sizeof(string),"Rang 1: %s\nRang 2: %s\nRang 3: %s\nRang 4: %s\nRang 5: %s\nRang 6: %s",fInfo[i][rang1]


    zeigt er mir nix an

    Hallo ich stell mich gerade irgendwie zu blöd an X/


    ich möchte ein string in einem enum setzten


    Im enum:


    rang1[30],


    Im dialog:


    fInfo[rangwahl][rang1]=inputtext;


    und es kommt der Fehler!


    error 047: array sizes do not match, or destination array is too small


    wie definiert man einen string sonst in einem Enum?

    Hallo ich habe ein kleinen Schildersystem geschrieben


    mein problem dabei ist das die schrift viel zu schnell verschwindet :|



    ein schritt weiter



    bekomme ich die DrawDistance von MaterialText erhöht ?