Das ist nicht möglich, die Interior IDs sind fest vorgegeben.
[SAMMELTHREAD] Kleine Scripting Fragen
- Rafelder
- Unerledigt
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 nicht möglich, die Interior IDs sind fest vorgegeben.
Kann man die Maps von den Arenen nicht ändern??
-
Kann man die Maps von den Arenen nicht ändern??
Du kannst da höchstens ein paar Objekte selber hinmappen, oder welche entfernen.
-
-
Wie kann ich die Interior´s von den DM Arenen ändern?
Ich denke mal wieder I Love DM.
Unterm stock stock randomspawn(playerid,arena) kannst du die InteriorID´s der jeweiligen arenen ändern, SetPlayerInterior().
// Falls du eine neue Arena/Int möchtest vergiss nicht die Coords anzupassen, diese kannst du unter new Float:RandomSpawn1[9][3] = {(Dies währe für arena 1, die 9 steht für es gibt 9 Spawns, die 3 kannst du so lassen das steht für die 3 pflichtfelder(x, y, z))
z.B. sieht das so aus.
Code
Alles anzeigennew Float:RandomSpawn1[9][3] = { {-2093.1692,-112.5172,35.3203}, {-2091.1648,-146.7209,35.3203}, {-2092.4602,-185.1038,35.3203}, {-2043.3232,-184.8594,35.3203}, {-2021.0814,-190.4441,35.3203}, {-2014.6992,-158.5334,35.3203}, {-2015.6041,-128.4004,35.2769}, {-2025.1082,-113.1628,35.1582}, {-2043.5972,-115.3183,35.2131} }; -
Alles anzeigen
Ich denke mal wieder I Love DM.
Unterm stock stock randomspawn(playerid,arena) kannst du die InteriorID´s der jeweiligen arenen ändern, SetPlayerInterior().
// Falls du eine neue Arena/Int möchtest vergiss nicht die Coords anzupassen, diese kannst du unter new Float:RandomSpawn1[9][3] = {(Dies währe für arena 1, die 9 steht für es gibt 9 Spawns, die 3 kannst du so lassen das steht für die 3 pflichtfelder(x, y, z))
z.B. sieht das so aus.
Code
Alles anzeigennew Float:RandomSpawn1[9][3] = { {-2093.1692,-112.5172,35.3203}, {-2091.1648,-146.7209,35.3203}, {-2092.4602,-185.1038,35.3203}, {-2043.3232,-184.8594,35.3203}, {-2021.0814,-190.4441,35.3203}, {-2014.6992,-158.5334,35.3203}, {-2015.6041,-128.4004,35.2769}, {-2025.1082,-113.1628,35.1582}, {-2043.5972,-115.3183,35.2131} };Und RandomSpawn1 ist = Deagle Arena 1 oder wie
-
Und RandomSpawn1 ist = Deagle Arena 1 oder wie
Weiß nicht wie es bei dir ist.
Aber standart mäßig ist Spawn1 = Deagle Arena 1
-
Weiß nicht wie es bei dir ist.
Aber standart mäßig ist Spawn1 = Deagle Arena 1
Danke, Und wie kann man die Waffen von den Arenen ändern?
-
Moin,
ich möchte wie folgt machen.
Ein Dialog wo die Charactere aufgelistet sind, aber wenn "MaxChars" auf 1 steht das dann sofern kein Char mit der Accountid in der DB steht da steht "Neuen Character erstellen". Sollte "MaxChars" auf 2 stehn sollte darunter auch ein "Neuen Character erstellen! auftauchen.Code
Alles anzeigenFUNCTION ShowCharacter(playerid) { new rows, string[512],c1[255]; cache_get_row_count(rows); if(rows == 0) { format(c1,512,"{FFFFFF}Neuen Charakter anlegen"); } else if(rows == 1) { format(c1,512,"%s", CharacterInfo[playerid][character_RPVorName]); } if(ServerInfo[0][server_MaxChars] > 1) { format(c1,512,"{FFFFFF}Neuen Charakter anlegen"); } format(string,512,"{FFFFFF}Name\n%s",c1); ShowPlayerDialog(playerid,DIALOG_CHARACTER,DIALOG_STYLE_TABLIST_HEADERS,"{FFFFFF}Charakter - Übersicht",string,"{FFFFFF}Weiter","{FFFFFF}Abbrechen"); return 1; }So habe ich es bisher, aber mein Gefühl sagt mir ich hab was falsch gemacht da es nicht funktionert. Wie bekomme ich meinen Wunsch hin?
Danke im Voraus.
MfG
Allrounder18
-
Im Teil von MaxChars > 1:
format(c1,512,"{FFFFFF}Neuen Charakter anlegen");
zu:
format(c1,512,"%s\n{FFFFFF}Neuen Charakter anlegen",c1);
-
Im Teil von MaxChars > 1:
format(c1,512,"{FFFFFF}Neuen Charakter anlegen");
zu:
format(c1,512,"%s\n{FFFFFF}Neuen Charakter anlegen",c1);
Danke, ich habe jetzt noch was geändert aber es werden irgendwie nicht die eingestellten maxchars angezeigt
Code
Alles anzeigenFUNCTION ShowCharacter(playerid) { new rows, string[512],c1[255]; cache_get_row_count(rows); if(rows == 0) { format(c1,512,"{FFFFFF}Neuen Charakter anlegen"); } else if(rows == 1) { format(c1,512,"%s", CharacterInfo[playerid][character_RPVorName]); } if(AccountInfo[playerid][account_MaxChars] <= ServerInfo[0][server_MaxChars]) { format(c1,512,"%s\n{FFFFFF}Neuen Charakter anlegen",c1); } format(string,512,"{FFFFFF}Name\n%s",c1); ShowPlayerDialog(playerid,DIALOG_CHARACTER,DIALOG_STYLE_TABLIST_HEADERS,"{FFFFFF}Charakter - Übersicht",string,"{FFFFFF}Weiter","{FFFFFF}Abbrechen"); return 1; }Angenommen der Spieler hat account_MaxChars = 2 dann sollte da z. B. stehen Herman_Bauer\nNeuen Character anlegen bei account_MaxChars = Herman_Bauer\nNeuen Character anlegen\nNeuen Character anlegen solgange bis server_MaxChars voll ist z. B. server_MaxChars =4.
Akutell hat ein Spieler account_MaxChars = 2 und es wird nur einmal "Neuen Charaktre anlegen" angezeigt und biem zweiten Spieler welcher account_MaxChars = 4 hat wird zweimal "Neuen Charaktre anlegen" angezeigt.
Was mache ich falsch?
-
Du musst mit einer Schleife arbeiten.
-
Du musst mit einer Schleife arbeiten.
Ich hab es jetzt so versucht.
Code
Alles anzeigenFUNCTION ShowCharacter(playerid) { new rows, string[512],c1[255]; cache_get_row_count(rows); for(new i; i<rows; i++) { if(rows == 0) { format(c1,512,"{FFFFFF}Neuen Charakter anlegen"); } else if(rows == 1) { format(c1,512,"%s", CharacterInfo[playerid][character_RPVorName]); } if(AccountInfo[playerid][account_MaxChars] <= ServerInfo[0][server_MaxChars]) { format(c1,512,"%s\n{FFFFFF}Neuen Charakter anlegen",c1); } } format(string,512,"{FFFFFF}Name\n%s",c1); ShowPlayerDialog(playerid,DIALOG_CHARACTER,DIALOG_STYLE_TABLIST_HEADERS,"{FFFFFF}Charakter - Übersicht",string,"{FFFFFF}Weiter","{FFFFFF}Abbrechen"); return 1; }Wenn sich jetzt jemand registriert und nen Character erstellen möchte geht dies nicht, da "Neuen Character erstellen" erst garnicht im Dialog steht.
Code
Alles anzeigenFUNCTION AccountRegister(playerid) { new string[512]; AccountInfo[playerid][account_ID] = cache_insert_id(); AccountInfo[playerid][account_Eingeloggt] = true; AccountInfo[playerid][account_MaxChars] = 1; AccountInfo[playerid][account_Admin] = 0; AccountInfo[playerid][account_Verwalter][0] = 0; AccountInfo[playerid][account_Verwalter][1] = 0; AccountInfo[playerid][account_Verwalter][2] = 0; AccountInfo[playerid][account_Verwalter][3] = 0; mysql_format(handle, string, sizeof(string), "SELECT * FROM `account_team` WHERE `accountid` = '%d'", AccountInfo[playerid][account_ID]); mysql_tquery(handle, string, "OnTeamCheck", "d", playerid); mysql_format(handle, string, sizeof(string), "SELECT * FROM `character` WHERE `accountid` = '%d'", AccountInfo[playerid][account_ID]); mysql_tquery(handle, string, "ShowCharacter", "d", playerid); return 1; } -
Code
Alles anzeigenFUNCTION ShowCharacter(playerid) { new rows, string[512], c1[255]; cache_get_row_count(rows); if(rows == 0) { format(c1,512,"{FFFFFF}Neuen Charakter anlegen"); } else if(rows == 1) { format(c1,512,"%s", CharacterInfo[playerid][character_RPVorName]); } for(new i = 1; i < ServerInfo[0][server_MaxChars] && i < AccountInfo[playerid][account_MaxChars]; i++) { format(c1,512,"%s\n{FFFFFF}Neuen Charakter anlegen",c1); } format(string,512,"{FFFFFF}Name\n%s",c1); ShowPlayerDialog(playerid,DIALOG_CHARACTER,DIALOG_STYLE_TABLIST_HEADERS,"{FFFFFF}Charakter - Übersicht",string,"{FFFFFF}Weiter","{FFFFFF}Abbrechen"); return 1; } -
Funktioniert so weit, danke.
Aber wenn ich den Account erstelle, kommt wieder der Dialog mit "Neuen Charakter erstellen" und ich müsste den Char nochmal erstellen.
-
Genau, das ist was der Code macht.
Wie du die Chars speicherst, ist hier nicht ersichtlich.
Wenn es anders sein soll, musst du es natürlich entsprechend aufbauen, mit einem Array in dem die Chars stehen und gespeichert werden.
-
Was muss ich ändern, damit wenn account_MaxChars =1 auch ein Char im Dialog angezeigt wird anstatt garkeiner?
Wenn es anders sein soll, musst du es natürlich entsprechend aufbauen, mit einem Array in dem die Chars stehen und gespeichert werden.
Was meinst du mit anders, bzw. was meinst du mit Array wo die Chars gespeichert werden?
-
1.
Kann ich dir nicht sagen, der Code dazu fehlt.
2.
Wenn du mehrere Charaktere speichern willst, benötigst du ein Array, sonst gibst du immer den gleichen Charakter in dem Code aus. Außerdem muss der Code mit einer weiteren Schleife über die aus dem Cache gelesenen Daten versehen werden.
Zudem geht das Aufbauen eines kompletten Systems über eine "kleine Scripting Frage", für die dieser Thread gedacht ist, hinaus.
-
Wie kann man die Waffen von den Arenen ändern?
-
Wie kann man die Waffen von den Arenen ändern?
ehm really?
sucht doch erstmal bevor du fragst 🙄Da wo du die Interior ID änderst steht z.B. Bei der deagle arena GivePlayerWeaponEx
Oder SetPlayerWeaponEx bin mit gerade nicht sicher, wenn ich zuhause bin kann ich es dir ausführlich erklären.

