Entferne die Klammern und schreibe vorne 0x hin, und hinten FF.
[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
-
-
Danke, was neues dazugelernt
!Noch eine Frage, ich habe mir ein Befehl erstellt, mit dem ich Spieler markieren kann. Wie kann ich das so einrichten, das ich mehrere IDs hintereinander im Befehl eingeben kann?
z.B /amark 1 3 5 6 9 12 11 10
(Markiert ID 1,3,5,6,9,12,11 und 10)CMD:amark(playerid,params[])
{if(!CheckAdminName(playerid)) return 0;
new pID, tmp[20], idx;
tmp = strtok(params, idx);
if(!strlen(tmp)) return SendClientMessage(playerid,0x6FFFFFFF,"ERROR:: /mark [ID]");
if(IsNumeric(tmp)) pID = strval(tmp);
else pID = ReturnPlayerID(tmp);
if(!IsPlayerConnected(pID)) return SendClientMessage(playerid,0x6FFFFFFF,"The Player is not online");
SetPlayerMarkerForPlayer( playerid, pID, 0xFF0033FF );
return 1;
} -
Danke für die Hilfe..funkltioniert leider immer noch nicht könnte auch sein das es an phpmyAdmin liegt. Seit dem ich grade eben den PC gestartet hab zeigt er mir folgende Meldung:
Was für eine Fehlermeldung kommt denn
-
Wie kann ich das so einrichten, das ich mehrere IDs hintereinander im Befehl eingeben kann?
Du kannst dein "tmp" bzw. dein "params" am Komma aufteilen.
Nutze dazu die "strexplode" Funktion von hier: http://forum.sa-mp.com/showthread.php?t=362764Danach kannst du durch den Output loopen, per Schleife, und wenn strlen von Output[ i ] > 0 ist, dann kannst du über ReturnPlayerID die playerid auslesen, wie gehabt.
-
gibt es eine möglichkeit abzufragen ob ich ein objekt abschieße? Mit lagcomp off
-
Was für eine Fehlermeldung kommt denn
Na eben diese:XML-Verarbeitungsfehler: Fehler beim Verarbeiten einer Referenz auf eine externe Entität Adresse: jar:file:///C:/Program%20Files%20(x86)/Mozilla%20Firefox/omni.ja!/chrome/toolkit/content/global/netError.xhtml?e=connectionFailure&u=http://localhost/phpmyadmin/&c=UTF-8&f=regular&d=Firefox%20kann%20keine%20Verbindung%20zu%20dem%20Server%20unter%20localhost%20aufbauen. Zeile Nr. 10, Spalte 3:
%netErrorAppDTD;
--^ -
Hi, weiß jemand wie ich bei Zamaroth's Textdraw Editor, den Hintergrund eines Textdraws ändere bei dem ich eine Model ID verwende?
Wenn ich z.B. ein Skin verwende, ist um den Skin immer eine schwarze Box, die möchte ich weg machen, weiß aber nicht wie.. -
if(dialogid == 107)
{
if(response)
{
if(inputtext[3])
{if(SetSpawnInfo(playerid, 0, inputtext, 314.5553, -1774.3304, 4.7110, 180.0000, 0, 0, 0, 0, 0, 0))
{
SendClientMessage(playerid, COLOR_LIGHTBLUE, "");
SendClientMessage(playerid, COLOR_LIGHTBLUE, "(( Der Vorgang war erfolgreich! Du wurdest eingeloggt und gespawnt. ))");
SpawnPlayer(playerid);
}
else
{
Kick(playerid);
}
}
}
}Was mach ich falsch? Es kommt immer ein Error, weil eine Variable falsch ist...
-
Kannst du die Fehlermeldung bitte posten, und erklären, was dein Code machen soll?
-
Ein Skin setzen für den Spawn.
C:\Users\Curious\Desktop\Mapping SAMP\SAMP Server neu\gamemodes\CL.pwn(8503) : error 035: argument type mismatch (argument 3) -
if(SetSpawnInfo(playerid, 0, inputtext, 314.5553, -1774.3304, 4.7110, 180.0000, 0, 0, 0, 0, 0, 0))
zu:
if(SetSpawnInfo(playerid, 0, strval(inputtext), 314.5553, -1774.3304, 4.7110, 180.0000, 0, 0, 0, 0, 0, 0)) -
Da meine Frage vermutlich untergegangen ist, poste ich SIe noch einmal, in Hoffnung, dass sich jemand damit auskennt.
Kleine Frage:
Kann mir jemand die Funktion GetVehicleRotationQuat etwas genauer erlären.
Wie die Werte zustande kommen und wozu man es benutzen könnte. -
Erklären kann ich es dir nicht, aber schaue dir mal das hier an (ganz unten wird die 3D-Drehung erklärt), vielleicht hilft dir das:
https://wiki.delphigl.com/index.php/QuaternionDie Werte kannst du nutzen, um die Rotation des Fahrzeugs in alle drei Richtungen zu berechnen.
Hier etwas dazu: http://forum.sa-mp.com/showthread.php?t=167645
Vor allem die Posts darunter scheinen hilfreich. -
Hi, wollte Fragen, wie ich abfragen kann ob man bereits einen Account hat oder nicht.
Hab dies so gemacht, leider funktioniert das nicht.
if(playertextid == Textdraw42[playerid]) //Einloggen
{
if(cache_get_row_count() == 0) return SendClientMessage(playerid, COLOR_WHITE, "Du musst dir erst einen Account erstellen!");
if(strlen(PlayerInfo[playerid][ppassword]) <= 5) return SendClientMessage(playerid, COLOR_WHITE, "Dein Passwort ist zu kurz mind. 6 Zeichen!");
{
new query[128];
mysql_format(db_handle, query, sizeof(query), "SELECT id FROM accounts WHERE name = '%e'", PlayerInfo[playerid][pname]);
mysql_pquery(db_handle, query, "OnUserCheck", "d", playerid);
}
}
if(playertextid == Textdraw49[playerid]) //Registrieren
{
if(cache_get_row_count() == 1) return SendClientMessage(playerid, COLOR_WHITE, "Du hast bereits einen Account!");
if(strlen(PlayerInfo[playerid][ppassword]) <= 5) return SendClientMessage(playerid, COLOR_WHITE, "Dein Passwort ist zu kurz mind. 6 Zeichen!");
{
new query[256];
mysql_format(db_handle, query, sizeof(query), "INSERT INTO users (name, password) VALUES ('%e', MD5('%e'))", PlayerInfo[playerid][pname], PlayerInfo[playerid][ppassword]);
mysql_pquery(db_handle, query, "OnUserRegister", "d", playerid);
}
}und dazu bekomm ich noch diese Debugs angezeigt.
[20:53:28] [DEBUG] cache_get_row_count - connection: 1
[20:53:28] [WARNING] cache_get_row_count - no active cache
[20:53:28] [DEBUG] mysql_format - connection: 1, len: 256, format: "INSERT INTO users (name, password) VALUES ('%e', MD5('%e'))"
[20:53:28] [DEBUG] mysql_pquery - connection: 1, query: "INSERT INTO users (name, password) VALUES ('Xtendary', MD5('1234", callback: "OnUserRegister", format: "d"
[20:53:28] [DEBUG] CMySQLQuery::Execute[OnUserRegister] - starting query execution
[20:53:28] [ERROR] CMySQLQuery::Execute[OnUserRegister] - (error #1146) Table 'db_samp.users' doesn't exist
[20:53:28] [DEBUG] CMySQLQuery::Execute[OnUserRegister] - error will be triggered in OnQueryErrorMit freundlichen Grüßen
Grapefruit -
Alles anzeigen
Hi, wollte Fragen, wie ich abfragen kann ob man bereits einen Account hat oder nicht.
Hab dies so gemacht, leider funktioniert das nicht.if(playertextid == Textdraw42[playerid]) //Einloggen { if(cache_get_row_count() == 0) return SendClientMessage(playerid, COLOR_WHITE, "Du musst dir erst einen Account erstellen!"); if(strlen(PlayerInfo[playerid][ppassword]) <= 5) return SendClientMessage(playerid, COLOR_WHITE, "Dein Passwort ist zu kurz mind. 6 Zeichen!"); { new query[128]; mysql_format(db_handle, query, sizeof(query), "SELECT id FROM accounts WHERE name = '%e'", PlayerInfo[playerid][pname]); mysql_pquery(db_handle, query, "OnUserCheck", "d", playerid); } } if(playertextid == Textdraw49[playerid]) //Registrieren { if(cache_get_row_count() == 1) return SendClientMessage(playerid, COLOR_WHITE, "Du hast bereits einen Account!"); if(strlen(PlayerInfo[playerid][ppassword]) <= 5) return SendClientMessage(playerid, COLOR_WHITE, "Dein Passwort ist zu kurz mind. 6 Zeichen!"); { new query[256]; mysql_format(db_handle, query, sizeof(query), "INSERT INTO users (name, password) VALUES ('%e', MD5('%e'))", PlayerInfo[playerid][pname], PlayerInfo[playerid][ppassword]); mysql_pquery(db_handle, query, "OnUserRegister", "d", playerid); } }
und dazu bekomm ich noch diese Debugs angezeigt.
[20:53:28] [DEBUG] cache_get_row_count - connection: 1[20:53:28] [WARNING] cache_get_row_count - no active cache[20:53:28] [DEBUG] mysql_format - connection: 1, len: 256, format: "INSERT INTO users (name, password) VALUES ('%e', MD5('%e'))"[20:53:28] [DEBUG] mysql_pquery - connection: 1, query: "INSERT INTO users (name, password) VALUES ('Xtendary', MD5('1234", callback: "OnUserRegister", format: "d"[20:53:28] [DEBUG] CMySQLQuery::Execute[OnUserRegister] - starting query execution[20:53:28] [ERROR] CMySQLQuery::Execute[OnUserRegister] - (error #1146) Table 'db_samp.users' doesn't exist[20:53:28] [DEBUG] CMySQLQuery::Execute[OnUserRegister] - error will be triggered in OnQueryError
Mit freundlichen Grüßen
Grapefruit
forward IstAccountVorhanden(playerid);//Abfrage - senden
mysql_format(db_handle, query, sizeof(query), "SELECT id FROM accounts WHERE name = '%e'", PlayerInfo[playerid][pname]);
mysql_pquery(db_handle, query, "IstAccountVorhanden", "d", playerid);//Abfrage - wiedergeben
public IstAccountVorhanden(playerid)
{
new num_rows,num_fields;
cache_get_data(num_rows, num_fields, db_handle);
if(num_rows)
{
return SendClientMessage(playerid, COLOR_WHITE, "Du hast bereits einen Account!");
}
return SendClientMessage(playerid, COLOR_WHITE, "Du musst dir erst einen Account erstellen!");
} -
Es gibt doch diese "Skin-Dialoge". Wo du Models in einen Dialog laden kannst. Ich hab nur absolut keine Ahnung wie die heißen. Würde die gerne nutzen. Hat jemand einen SAMP Wiki Link für mich?
#edit: super, jetzt hab ichs auch gefunden.

-
Guten Tag,
wie mache ich einen Teamausgleich?
Beispiel:
Team 1: 25
Team 2: 24
system checkt: In Team 1 sind mehr als in Team 2. Somit geht der Spieler Automatisch zu Team 2.-> Ich hatte schon Vermutungen mit If abfage und < > aber genau komme ich einfach nicht drauf.
-
if(members1 <= members2)
{
//In Team1 setzen
members1++;
}
else
{
//In Team2 setzen
members2++;
} -
Hi, hab 2 Fragen.
1 Frage:
Nach einem relog verschwindet eine Textdraw Box die aber vor dem relog noch da war. Die anderen Textdraws sind vorhanden nur die Box nicht.
Textdraw0[playerid] = CreatePlayerTextDraw(playerid, 641.666687, 399.307403, "Balkenu");
PlayerTextDrawLetterSize(playerid, Textdraw0[playerid], 0.000000, 5.214200);
PlayerTextDrawTextSize(playerid, Textdraw0[playerid], -2.000000, 0.000000);
PlayerTextDrawAlignment(playerid, Textdraw0[playerid], 1);
PlayerTextDrawColor(playerid, Textdraw0[playerid], 0);
PlayerTextDrawUseBox(playerid, Textdraw1[playerid], true);
PlayerTextDrawBoxColor(playerid, Textdraw1[playerid], 255);
PlayerTextDrawSetShadow(playerid, Textdraw0[playerid], 0);
PlayerTextDrawSetOutline(playerid, Textdraw0[playerid], 0);
PlayerTextDrawBackgroundColor(playerid, Textdraw0[playerid], 255);
PlayerTextDrawFont(playerid, Textdraw0[playerid], 0);2 Frage:
Ich möchte Anzeigen lassen, wie viele Teammitglieder zurzeit Online sind als Textdraw, das problem ist es zeigt Ingame nicht an.
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(PlayerInfo[playerid][padmin] > 1)
{
new string3[80];
format(string3, sizeof(string3), "Davon sind ~r~%i~n~~w~Teammitglieder Online!", i);
PlayerTextDrawSetString(playerid, Textdraw21[playerid], string3);
}
}Ich bedanke mich schon mal im Voraus

Mit freundlichen Grüßen
Grapefruit -
- for(new i = 0; i < MAX_PLAYERS; i++)
- {
- if(PlayerInfo[playerid][padmin] > 1)
- {
- new string3[80];
- format(string3, sizeof(string3), "Davon sind ~r~%i~n~~w~Teammitglieder Online!", i);
- PlayerTextDrawSetString(playerid, Textdraw21[playerid], string3);
- }
- }
zu
- new var = 0;
- for(new i = 0; i < MAX_PLAYERS; i++)
- {
- if(PlayerInfo[playerid][padmin] > 1)
- {
- var++;
- }
- }
- new string3[80];
- format(string3, sizeof(string3), "Davon sind ~r~%i~n~~w~Teammitglieder Online!", var);
- PlayerTextDrawSetString(playerid, Textdraw21[playerid], string3);
Bitteschön

-

