Ok danke und wofür steht das %d?
Beiträge von Infictible
-
-
Hallo ich habe folgendes Problem.
Ich habe einen heal befehl gemacht aber wenn dieser ausgeführt wird steht da nicht wie es soll : Der spieler mit der ip (zb. 4) hat dich gehealt)
Sondern da steht der spieler mit der ID 182942 hat dich gehaelt
ocmd:heal(playerid,params[])
{
new pID, string[35];
if(!IsAdmin(playerid,1))return SendClientMessage(playerid,ROT,"Du bist nicht berechtigt diesen Befehl zu benutzen.");
format(string, sizeof(string),"Du hast den Spieler mit der ID %s erfolgreich geheilt.",pID);
if(sscanf(params,"us",pID)) return SendClientMessage(playerid,GRAU,"INFO: /heal [playerid]");
SetPlayerHealth(pID,100.0);
SendClientMessage(pID,GRÜN,"Du wurdest geheilt");
SendClientMessage(playerid,GRÜN,string);
return 1;
} -
Hallo Ich habe mal wieder zwei Fragen.
Meine erste wäre: also ein i=integer, s=string, aber wofür steht ein u=?
Und ich habe einen Befehl selbst gescripted und will gerne anzeigen lassen das man den spieler mid dieser ID geheilt hat wie geht das?
ocmd:heal(playerid,params[])
{
new pID;
if(!IsAdmin(playerid,1))return SendClientMessage(playerid,ROT,"Du bist nicht berechtigt diesen Befehl zu benutzen.");
if(sscanf(params,"u",pID)) return SendClientMessage(playerid,GRAU,"INFO: /heal [playerid]");
SetPlayerHealth(pID,100.0);
SendClientMessage(pID,GRÜN,"Du wurdest geheilt");
SendClientMessage(playerid,GRÜN,"Du hast den Spieler mit der ID %u erfolgreich geheilt.");
return 1;
} -
Wie oft willst du noch einen Thread öffnen?
Samp am besten lernen und VERSTEHEN.
Dort habe ich dir einen Link von einem Thread geschickt, dort steht ein guter Beitrag von Jeffry.Ja aber ich wollte nochmal direkt fragen wie ihr angefangen habt und ob ihr tips habt....
-
Hallo ich kenne nur leichte Grundkentnisse des SAMP PAWNO scripting.
Und es heißt ja immer learning by doing, desalb wollte ich euch fragen was könnte ich denn selbst scripten (einfache sachen-schwere sachen)
Womit habt ihr angefangen.
und Ob diese Tutorials auf Youtube(Mr. Monat) überhaupt etwas helfen.
-
Danke
Hat geklappt#closed
-
[14:43:10] Loaded.
[14:43:10] Loading plugin: mysql
[14:43:10] >> plugin.mysql: R34 successfully loaded.
[14:43:10] Loaded.
[14:43:10] Loading plugin: nativechecker
[14:43:10] Loaded.
[14:43:10] Loaded 3 plugins.[14:43:10]
[14:43:10] Filterscripts
[14:43:10] ---------------
[14:43:10] Loaded 0 filterscripts.[14:43:10] Number of vehicle models: 0
[14:43:35] Incoming connection: 127.0.0.1:64602
[14:43:35] [join] [RE]Infictible has joined the server (0:127.0.0.1)
[14:44:41] [part] [RE]Infictible has left the server (0:1)Hier Der ServerLog ich glaub da steht es
-
Hallo Ich habe ein Accountsystem erstellt, aber wenn ich auf den Server connecten erscheint nut der Login Dialog, obwohl mein Acount garnicht in der Datenbank ist und deshalb nimmt er das PW auch nicht an.
bitte um hilfe hier die wichtigsten stellen im Script.
//MySql
#define db_host "localhost"
#define db_user "root"
#define db_pass ""
#define db_db "samp"// Dcmd
#define dcmd(%1,%2,%3) if (!strcmp((%3)[1], #%1, true, (%2)) && ((((%3)[(%2) + 1] == '\0') && (dcmd_%1(playerid, ""))) || (((%3)[(%2) + 1] == ' ') && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1// Forwards
forward tot(playerid);
forward OnPlayerCheck(playerid);
forward OnPasswordResponse(playerid);//Enums
enum SpielerDaten
{
Eingeloggt,
Adminlevel,
Level,
Fraktion,
Team,
Geld
};
new sDaten[MAX_PLAYERS][SpielerDaten];/* GLOBALE VARIABLEN */
//my sql
new db_handle;public OnGameModeInit()
{
SetGameModeText("LOL 1.0.0");//My SQL
db_handle = mysql_connect(db_host,db_user,db_db,db_pass);// MySql Account System
new name[MAX_PLAYER_NAME], query [128];
GetPlayerName(playerid,name,sizeof(name));
format(query,sizeof(query),"SELECT ID FROM User WHERE Benutzername='%s'",name);
mysql_function_query(db_handle,query,true,"OnPlayerCheck","i",playerid);public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == LOGIN)
{
if(response)
{
new name[MAX_PLAYER_NAME],query[128],passwort[35];
GetPlayerName(playerid,name,sizeof(name));
if(strlen(inputtext)>0)
{
mysql_escape_string(inputtext,passwort,db_handle);
format(query, sizeof(query),"SELECT * FROM USER WHERE Benutzername='%s' AND Passwort='%s'",name,passwort);
mysql_function_query(db_handle,query,true,"OnPasswordResponse","i",playerid);
}
else
{
SendClientMessage(playerid,BLAU,"Gib bitte ein Passwort ein.");
ShowPlayerDialog(playerid,LOGIN,DIALOG_STYLE_PASSWORD,"Login","{FEFEFE}Dein {FF9600}Account {FEFEFE}wurde in unserer Datenbank gefunden, bitte gebe nun dein Passwort ein und logge dich somit ein.","Login","Abbrechen");
}
}
else
{
Kick(playerid);
}
return 1;
}
if(dialogid == REGISTER)
{
if(response)
{
new name[MAX_PLAYER_NAME],query[128],passwort[35];
GetPlayerName(playerid,name,sizeof(name));
if(strlen(inputtext)>4)
{
mysql_escape_string(inputtext,passwort,db_handle);
format(query,sizeof(query),"INSERT INTO User(Benutzername,Passwort) VALUES('%s','%s')",name, passwort);
mysql_function_query(db_handle,query,false,"","");
}
else
{
SendClientMessage(playerid,BLAU,"Dein Passwort ist zu kurz. Es muss mindestens 5 Zeichen enthalten");
ShowPlayerDialog(playerid,REGISTER,DIALOG_STYLE_INPUT,"Registration","Dein Account wurde nicht in unserer Datenkbank gefunden. Bitte gebe ein Passwort ein um dich nun auf unserem Server zu Regestrieren.","Regestrieren","Abbrechen");
}
}
else
{
Kick(playerid);
}
return 1;
}public OnPlayerCheck(playerid)
{
new num_rows,num_fields;
cache_get_data(num_rows,num_fields,db_handle);
if(num_rows==0)
{
ShowPlayerDialog(playerid,LOGIN,DIALOG_STYLE_PASSWORD,"Login","{FEFEFE}Dein {FF9600}Account {FEFEFE}wurde in unserer Datenbank gefunden, bitte gebe nun dein Passwort ein und logge dich somit ein.","Login","Abbrechen");
SendClientMessage(playerid,BLAU,"Hallo, Wilkommen zurrück auf Royal_Elite");
}
else
{
ShowPlayerDialog(playerid,REGISTER,DIALOG_STYLE_INPUT,"Registration","Dein Account wurde nicht in unserer Datenkbank gefunden. Bitte gebe ein Passwort ein um dich nun auf unserem Server zu Regestrieren.","Regestrieren","Abbrechen");
SendClientMessage(playerid,BLAU,"Herzlich Wilkommen auf dem Royal_Elite Samp Server");
}
return 1;
}public OnPasswordResponse(playerid)
{
new num_rows,num_fields;
cache_get_data(num_rows,num_fields,db_handle);
if(num_rows==1)
{
sDaten[playerid][Eingeloggt] = 1;
sDaten[playerid][Adminlevel] = cache_get_field_content_int(0,"Adminlevel",db_handle);
sDaten[playerid][Level] = cache_get_field_content_int(0,"Level",db_handle);
sDaten[playerid][Fraktion] = cache_get_field_content_int(0,"Level",db_handle);
sDaten[playerid][Geld] = cache_get_field_content_int(0,"Level",db_handle);
}
else
{
ShowPlayerDialog(playerid,LOGIN,DIALOG_STYLE_PASSWORD,"Login","{FEFEFE}Dein {FF9600}Account {FEFEFE}wurde in unserer Datenbank gefunden, bitte gebe nun dein Passwort ein und logge dich somit ein.","Login","Abbrechen");
SendClientMessage(playerid,ROT,"Das eingegebene Passwort ist inkorrekt!");
}
return 1;
}Ich habe auch keine Errors im Script
Mfg Infictible
-
Hab ich auch bemerkt xD^^
-
Ja aber geht also thx
Steht in einem Beitrag von mir
Habs da gepostet also das DEFINE
#closed -
Wie kann man das anders machen?
-
Habs behoben.
Mein Plugin Nativechecker muss ans ende der Plugin list in der Server.cfg
#closed
-
Danke xD Sry bin heute bisschen Mad
Kann jetzt jeder Spieler also wenn Ich LSPD bin kann ich dann trotzdem das Feuerwehr Tor aufmachen ?
-
Da war ich drauf und dachte wäre falsch weil der Beitrag von 2013 is thx
-
Ok kannst du mir pls nen Link schicken?
bin zu dumm um das plugin zu finden -.-"
-
Ok Danke^^
Aber was muss ich dann bei der 1 hinschreiben?
Weil am Anfang des Scripts hab ich es so definiert
// Fraktionen
#define sFraktion "LSPD"
#define sFraktion2 "ADAC"
#define sFraktion3 "FBI"
#define sFraktion4 "Yakuza"
#define sFraktion5 "Red Soldiers"//Dialoge
#define REGISTER 1
#define LOGIN 2
#define REGELN 3
#define AKZEPTIERT 4
#define NICHTAKZEPTIERT 5//Enums
enum SpielerDaten
{
Adminlevel,
Level,
Fraktion,
Team,
sLogin
};
new sSpieler[MAX_PLAYERS][SpielerDaten];/* News */
new db_handle;
// Tore
new YakuzaTor1;
new YakuzaTor2;// Fahrschule
new FsTor;//
new RSTor;// FBI
new FBI;// TaxiTor
new TTor1;
new TTor2; -
Also ich habe die neusten Plugins eig. (Mysql auf jedenfall SScanf weiß nicht genau)
und im Script alle includes includiert aber was meinst du mit define? -
Hallo Ich habe ein Fraktionssystem geschrieben und wollte das jeder Fraktion seine Tore öffnet.
Doch ich habe das mit einem YT Video gemacht und er hat das gemacht wenn der spieler dieses Adminlevel ist, Aber ich würde gerne das man in der und der Fraktion sein muss um das Tor zu öffnen.
// Fahrschule Gate
if(strcmp("/fs", cmdtext, true, 10) == 0)
{
if(sSpieler[playerid][Adminlevel] >= 1)
{
if(IsPlayerInRangeOfPoint(playerid,10.5,-2049.3999, -212.89999, 35.4))
{
SendClientMessage(playerid,GRÜN,"Du hast das Tor geöffnet. Es schließt sich automatisch.");
MoveObject(FsTor, -2049.3999, -212.89999, 25.4, 2.0);
SetTimer("TorFs",5027,false);
return 1;
}
else
{
SendClientMessage(playerid,ROT,"Du bist nicht berechtigt das Tor zu öffnen.");
return 1;
}
}
}So hat er das aber wi kann ich das ändern?
-
Ich bekomme auf einmal diese Errors. Bitte um hilfe
SQL
Alles anzeigen[17:51:49] Loaded. [17:51:49] Loading plugin: mysql [17:51:49] >> plugin.mysql: R34 successfully loaded. [17:51:49] Loaded. [17:51:49] Loaded 3 plugins. [17:51:49] [17:51:49] Filterscripts [17:51:49] --------------- [17:51:49] Loaded 0 filterscripts. [17:51:49] Error: Function not registered: 'SSCANF_Init' [17:51:49] Error: Function not registered: 'SSCANF_Join' [17:51:49] Error: Function not registered: 'SSCANF_Leave' [17:51:49] Error: Function not registered: 'mysql_connect' [17:51:49] Error: Function not registered: 'mysql_close' [17:51:49] Error: Function not registered: 'sscanf' [17:51:49] ---------------------------------- [17:51:49] Royal_Elite [17:51:49] ---------------------------------- [17:51:49] Number of vehicle models: 23
-
Frage steht oben.
Ich wollte nämlich Regeln Akzeptieren und Account Registrieren nacheinander anzeigen lassen.
Aber so wie ich das gerade mache kommt nur der Dialog Regeln zum Vorschein.Kann mir jemand helfen? was mach ich falsch?
SQL
Alles anzeigenpublic OnPlayerConnect(playerid) { new Spieler[64]; new Sname[MAX_PLAYER_NAME]; GetPlayerName(playerid,Sname,sizeof(Sname)); format(Spieler,sizeof(Spieler),"/Spieler/%s.txt",Sname); if(dini_Exists(Spieler)) { ShowPlayerDialog(playerid,LOGIN,DIALOG_STYLE_PASSWORD,"Login","{FEFEFE}Dein {FF9600}Account {FEFEFE}wurde in unserer Datenbank gefunden, bitte gebe nun dein Passwort ein und logge dich somit ein.","Login","Abbrechen"); SendClientMessage(playerid,BLAU,"Hallo, Wilkommen zurrück auf Royal_Elite"); } else { ShowPlayerDialog(playerid,REGISTER,DIALOG_STYLE_PASSWORD,"Registration","Dein Account wurde nicht in unserer Datenkbank gefunden. Bitte gebe ein Passwort ein um dich nun auf unserem Server zu Regestrieren.","Regestrieren","Abbrechen"); SendClientMessage(playerid,BLAU,"Herzlich Wilkommen auf dem Royal_Elite Samp Server"); ShowPlayerDialog(playerid, 3,DIALOG_STYLE_MSGBOX, "Regeln", "Hast du unsere Regeln/Agb auf www.Servername.de gelesen und Akzeptierst sie?", "Ja", "Nein"); }