Naja der befehl geht zwar aber sobalt ich bei OnGameModeInit das mache:
CreatePickup(1240,2,251.7377,121.1210,1003.2188);
und dann ins Pickup laufe kriegt er schon direkt leben ohne den befehl zu nutzen ..
Naja der befehl geht zwar aber sobalt ich bei OnGameModeInit das mache:
CreatePickup(1240,2,251.7377,121.1210,1003.2188);
und dann ins Pickup laufe kriegt er schon direkt leben ohne den befehl zu nutzen ..
Also das Pickup befindet sich in einem Interior ..
Kordinate dazu
251.7377,121.1210,1003.2188
Fraktion Abfrage .. müsste das hier sein ..
if(isPlayerInFrakt(i,GetPVarInt(playerid,"Fraktion")))
Abend.
ich habe mal eine kleine frage.. und zwar habe ich vor für eine Fraktion ein Heal Pickup zu machen, dieses pickup soll auch nur für diese Fraktion sein, und der spieler muss sich in der nehe des Pickups befinden, und dann ein Befehl eingeben z.B "/heal" damit er sich healen kann ..
villeicht kann mir einer weiter helfen ..
MFG: Equ_Res
if(dialogid==DIALOG_REGISTER)
{
if(response==0)
{
SendClientMessage(playerid,BLAU,"Du hast den Vorgang abgebrochen.");
Kick(playerid);
return 1;
}
if(response==1)
{
if(!strlen(inputtext))
{
SendClientMessage(playerid,BLAU,"Das Passwort war nicht lang genug.");
ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"Registrieren","Gib bitte das gewünschte Passwort ein:","Register","Abbrechen");
return 1;
}
else
{
Register(playerid,inputtext);
return 1;
}
}
}
return 1;
}
Ich schicke dir einfahr mal beide
OnPlayerConnect
public OnPlayerConnect(playerid)
{
// .: MAP ICONS :.
// LSPD
SetPlayerMapIcon(playerid,1,1554.6030,-1675.4369,16.1953,30,GELB,MAPICON_LOCAL);
// Staathalle
SetPlayerMapIcon(playerid,2,1481.2584,-1768.5922,18.7958,38,GELB,MAPICON_LOCAL);
// Ammunation
SetPlayerMapIcon(playerid,3,1366.3596,-1280.4696,13.5469,6,GELB,MAPICON_LOCAL);
// BSN Icon
SetPlayerMapIcon(playerid,4,1201.2015,-921.2894,43.0943,10,GELB,MAPICON_LOCAL);
// Autohaus Icon
SetPlayerMapIcon(playerid,5,2131.4902,-1146.9860,24.5256,55,GELB,MAPICON_LOCAL);
// Bank Icon
SetPlayerMapIcon(playerid,6,1461.9246,-1012.8732,26.8438,52,GELB,MAPICON_LOCAL);
// 24/7 Icon
SetPlayerMapIcon(playerid,7,1315.2852,-899.1396,39.5781,25,GELB,MAPICON_LOCAL);
// ..
InSupport[playerid] = 0;
DeinSupport[playerid] = 0;
TicketGeschrieben[playerid] = 0;
Ping1[playerid] = 0;
SetTimerEx("Ping2", 1000*10, false, "%d", playerid);
GivePlayerMoney(playerid, 25000);
if(IsPlayerNPC(playerid))return 1;
new Spielerdatei[64];
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid,name,sizeof(name));
LoadAccount(playerid);
SendClientMessage(playerid,WEIS,"Willkommen auf Life of City (LoC)");
format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
if(dini_Exists(Spielerdatei))
{
ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Login System","Account wurde gefunden. Gib bitte dein Passwort ein.","Login","Abbrechen");
}
else
{
ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_PASSWORD,"Registrieren","Gib bitte Das Gewünschte passwort ein:","Register","Abbrechen");
}
return 1;
}
Und Hier der Stock
stock Register(playerid,key[])
{
new Spielerdatei[64];
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid,name,sizeof(name));
format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
dini_Create(Spielerdatei);
dini_Set(Spielerdatei,"Passwort",key);
SendClientMessage(playerid,BLAU,"Erfolgreich registriert.");
SetPlayerScore(playerid,0);
SetPVarInt(playerid,"loggedin",1);
return 1;
}
Abend
ich habe ein Großes problem.. das Register/Login System ist bei mir buggy und zwar wenn ich mein server starte und drauf joine fragt er logischer weise nach "Bitte gebe nun dein gewünschtes passwort ein" ich tuhe dies doch er erstellt kein Account o.O? und die Meldung wenn man ein Account erstellt hat "Account Erfolreich Erstellt" kommt auch nicht mehr ?
Villeicht könnt ihr mir da irgend wie weiter helfen..
MFG: Equ_Res
wie mache ich das jetzt, Das nur die Spieler den DIALOG ZU SEHEN bekommen die sich Noch Registrieren müssen .. weil wenn jetzt ein spieler rein kommt muss er sein Alter angeben .. er fragt jetzt garnicht mehr nach den Login System .. sondern nach den Alter system und fertig
Wie jetzt ? meinst du so ?
if(dialogid==DIALOG_REGISTER)
{
if(response==0)
{
SendClientMessage(playerid,GELB,"Vorgang abgebrochen.");
Kick(playerid);
return 1;
}
if(response==1)
{
if(!strlen(inputtext))
{
SendClientMessage(playerid,BLAU,"Passwort nicht lang genug.");
ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_PASSWORD,"Registrieren","Gib bitte das gewünschte Passwort ein:","Register","Abbrechen");
ShowPlayerDialog(playerid,DIALOG_ALTER,DIALOG_STYLE_INPUT,"Alter","Gib Bitte dein Alter an:","Absenden");
return 1;
}
else
{
Register(playerid,inputtext);
return 1;
}
}
}
return 0;
}
Moin
Ich habe mal wieder eine schöne Frage :D.
Ich habe ein Register/Login System mit Dialogen halt .. und ich möchte aber auch noch ein Alter system machen also wenn der Spieler auf dem Server Joint sollte ein "Dialog Alter" kommen also wo der spieler sein alter angeben muss, Ich habe es schon gescriptet aber irgend wie geht es nicht .. der spieler kann eingeben was er möchte das dialog geht einfahr dann nru weg und es passiert nix ..
Also hier der Script Code ..
Ganz Oben Definiert
#define DIALOG_ALTER 1
OnPlayerConnect
// .: MAP ICONS :.
// LSPD
SetPlayerMapIcon(playerid,1,1554.6030,-1675.4369,16.1953,30,GELB,MAPICON_LOCAL);
// Staathalle
SetPlayerMapIcon(playerid,2,1481.2584,-1768.5922,18.7958,38,GELB,MAPICON_LOCAL);
// Ammunation
SetPlayerMapIcon(playerid,3,1366.3596,-1280.4696,13.5469,6,GELB,MAPICON_LOCAL);
// BSN Icon
SetPlayerMapIcon(playerid,4,1201.2015,-921.2894,43.0943,10,GELB,MAPICON_LOCAL);
// Autohaus Icon
SetPlayerMapIcon(playerid,5,2131.4902,-1146.9860,24.5256,55,GELB,MAPICON_LOCAL);
// Bank Icon
SetPlayerMapIcon(playerid,6,1461.9246,-1012.8732,26.8438,52,GELB,MAPICON_LOCAL);
// 24/7 Icon
SetPlayerMapIcon(playerid,7,1315.2852,-899.1396,39.5781,25,GELB,MAPICON_LOCAL);
// ..
InSupport[playerid] = 0;
DeinSupport[playerid] = 0;
TicketGeschrieben[playerid] = 0;
Ping1[playerid] = 0;
SetTimerEx("Ping2", 1000*10, false, "%d", playerid);
GivePlayerMoney(playerid, 25000);
if(IsPlayerNPC(playerid))return 1;
new Spielerdatei[64];
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid,name,sizeof(name));
LoadAccount(playerid);
SendClientMessage(playerid,WEIS,"Willkommen auf Life of City (LoC)");
format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
SpielerSpeichern(playerid);
if(dini_Exists(Spielerdatei))
{
ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Login System","Account wurde gefunden. Gib bitte dein Passwort ein.","Login","Abbrechen");
}
else
{
ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_PASSWORD,"Registrieren","Gib bitte Das Gewünschte passwort ein:","Register","Abbrechen");
}
{
ShowPlayerDialog(playerid,DIALOG_ALTER,DIALOG_STYLE_INPUT,"Alter","Gib Bitte dein Alter an","Absenden");
}
return 1;
}
OnDialogResponse
if(dialogid == DIALOG_DRIVEIN)
{
if(response==1)
{
switch(listitem)
{
case 0:
{
GivePlayerMoney(playerid,-50);
GivePlayerHealth(playerid,30);
GameTextForPlayer(playerid, "Du hasst dir ein Chesse Burger Bestellt!.", 3000, 4);
}
case 1:
{
GivePlayerMoney(playerid,-50);
GivePlayerHealth(playerid,30);
GameTextForPlayer(playerid, "Du hasst dir ein Chicken Burger Bestellt!.", 3000, 4);
}
case 2:
{
GivePlayerMoney(playerid,-50);
GivePlayerHealth(playerid,30);
GameTextForPlayer(playerid, "Du hasst dir eine Pommes mit Chicken Bestellt!.", 3000, 4);
}
case 3:
{
GivePlayerMoney(playerid,-50);
GivePlayerHealth(playerid,10);
GameTextForPlayer(playerid, "Du hasst dir eine Cola Gekauft", 3000, 4);
}
}
}
return 1;
}
if(dialogid==DIALOG_ALTER)
{
if(response==0)
{
SendClientMessage(playerid,BLAU,"Vorgang abgebrochen.");
Kick(playerid);
return 1;
}
}
if(dialogid==DIALOG_LOGIN)
{
if(response==0)
{
SendClientMessage(playerid,BLAU,"Vorgang abgebrochen.");
Kick(playerid);
return 1;
}
if(response==1)
{
if(!strlen(inputtext))
{
SendClientMessage(playerid,GELB,"Passwort nicht lang genug.");
ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Login","Dein Account wurde gefunden. Gib bitte das Passwort ein.","Login","Abbrechen");
return 1;
}
else
{
Login(playerid,inputtext);
return 1;
}
}
}
if(dialogid==DIALOG_REGISTER)
{
if(response==0)
{
SendClientMessage(playerid,GELB,"Vorgang abgebrochen.");
Kick(playerid);
return 1;
}
if(response==1)
{
if(!strlen(inputtext))
{
SendClientMessage(playerid,BLAU,"Passwort nicht lang genug.");
ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_PASSWORD,"Registrieren","Gib bitte das gewünschte Passwort ein:","Register","Abbrechen");
return 1;
}
else
{
Register(playerid,inputtext);
return 1;
}
}
}
return 0;
}
stock Register(playerid,key[])
{
new Spielerdatei[64];
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid,name,sizeof(name));
format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
dini_Create(Spielerdatei);
dini_Set(Spielerdatei,"Alter",key);
dini_Set(Spielerdatei,"Passwort",key);
SendClientMessage(playerid,BLAU,"Account Erfolgreich Erstellt.");
SetPlayerScore(playerid,1);
SetPVarInt(playerid,"loggedin",1);
return 1;
}
stock LoadAccount(playerid)
{
new Spielerdatei[64];
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid,name,sizeof(name));
format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
SetPlayerScore(playerid,dini_Int(Spielerdatei,"Level"));
GivePlayerMoney(playerid,dini_Int(Spielerdatei,"Geld"));
SetPVarInt(playerid,"Alter",dini_Int(Spielerdatei,"Alter"));
SetPVarInt(playerid,"Adminlevel",dini_Int(Spielerdatei,"Adminlevel"));
SetPVarInt(playerid,"Suporterlevel",dini_Int(Spielerdatei,"Suporterlevel"));
SetPVarInt(playerid,"Level",dini_Int(Spielerdatei,"Level"));
SetPVarInt(playerid,"Baned",dini_Int(Spielerdatei,"Baned"));
SetPVarInt(playerid,"Premium",dini_Int(Spielerdatei,"Premium"));
SetPVarInt(playerid,"Coins",dini_Int(Spielerdatei,"Coins"));
SetPVarInt(playerid,"Warns",dini_Int(Spielerdatei,"Warns"));
SetPVarInt(playerid,"Fraktion",dini_Int(Spielerdatei,"Fraktion"));
SetPVarInt(playerid,"Leader",dini_Int(Spielerdatei,"Leader"));
SetPVarInt(playerid,"Spawnpunkt",dini_Int(Spielerdatei,""));
if(GetPVarInt(playerid,"Baned")==1)
{
SendClientMessage(playerid,ROT,"Du bist Gebannt");
Kick(playerid);
}
SetPVarInt(playerid,"loggedin",1);
return 1;
}
stock SpielerSpeichern(playerid)
{
if(GetPVarInt(playerid,"loggedin")==1)
{
new Spielerdatei[64];
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid,name,sizeof(name));
format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
dini_IntSet(Spielerdatei,"Alter",GetPVarInt(playerid,"Alter"));
dini_IntSet(Spielerdatei,"Level",GetPlayerScore(playerid));
dini_IntSet(Spielerdatei,"Geld",GetPlayerMoney(playerid));
dini_IntSet(Spielerdatei,"Premium",GetPVarInt(playerid,"Premium"));
dini_IntSet(Spielerdatei,"Adminlevel",GetPVarInt(playerid,"Adminlevel"));
dini_IntSet(Spielerdatei,"Suporterlevel",GetPVarInt(playerid,"Suporterlevel"));
dini_IntSet(Spielerdatei,"Baned",GetPVarInt(playerid,"Baned"));
dini_IntSet(Spielerdatei,"Coins",GetPVarInt(playerid,"Coins"));
dini_IntSet(Spielerdatei,"Warns",GetPVarInt(playerid,"Warns"));
dini_IntSet(Spielerdatei,"Fraktion",GetPVarInt(playerid,"Fraktion"));
dini_IntSet(Spielerdatei,"Leader",GetPVarInt(playerid,"Leader"));
dini_IntSet(Spielerdatei,"Spawnpunkt",GetPVarInt(playerid,"Spawnpunkt"));
}
return 1;
}
Also das einzige was ich will is wenn der Register Dialog kommt und er sein passwort angegeben hat, Das dann der "Dialog Alter" kommt .. villeicht könnt ihr mir da weiter helfen
MFG:
Equ_Res
Und der Stock IsPlayerAnAdmin hat den gleichen Inhalt, oder wie?
Falls ja, macht das ganze keinen Sinn ...
Alles anzeigenSo hätte ich das ganze gescriptet:
ocmd:kick(playerid,params[])
{
if(isPlayerAnSupporter(playerid,1) || isPlayerAnAdmin(playerid,2000))
{
new pID, reason[128],string[128];
if(sscanf(params,"us",pID,reason))return SendClientMessage(playerid,ORANGE,"/kick [ID] [Grund]");
format(string,sizeof(string),"=> %s wurde von %s gekickt. Grund: %s",SpielerName(pID),SpielerName(playerid),reason);
SendClientMessageToAll(ROT,string);
Kick(pID);
return 1;
}
else
{
SendClientMessage(playerid,Rot,"Du bist kein Admin!"
}
}
Da gibt es nur scheinbar Probleme bei dir.
Gibt es überhaupt "supportlevel"?
Das wird nämlich ausgelesen.
Daaaaanke es hat Geklappt ! @
EDIT: Danke an euch allen ! das ihr euch für mein thread so intressiert habt danke danke ..
Habe es davor schon so gemacht
stock isPlayerAnSupporter(playerid,level)
{
if(GetPVarInt(playerid,"supportlevel")>=level)return 1;
return 1;
}
stock isPlayerAnAdmin(playerid,level)
{
if(GetPVarInt(playerid,"Adminlevel")>=level)return 1;
return 0;
}
aber geht auch nicht ... oder ich mache irgend etwas falsch ..
stock isPlayerAnSupporter(playerid,level)
{
if(GetPVarInt(playerid,"adminlevel")>=level)return 1;
return 1;
}
jojo klar dein habe ich aus probiert kommt das selbe raus wie jetzt
Mach doch einfach die abfrage wegen 2000 Admin weg!
Dann haste das Problem doch gelöst. Musst halt wenn nur bei /makeadmin sofort den Supporter Rank 10000 setzen oder so
Hää ??? xD
Abend
Ich habe vor mehrere admin ränge zu erstellen, ich habe schon ein "stock" erstellt mit "Pvars" usw dann habe ich den eigentlichen Admin rang eingefügt, eingefügt .. Der Adminlevel 2000er kann denn befehl nutzen nur der Supporter nicht ? Warum ? if(!isPlayerAnSupporter(playerid,1))return SendClientMessage(playerid,ROT,"Du Bist Kein Admin!.");
ocmd:kick(playerid,params[])
{
if(!isPlayerAnSupporter(playerid,1))return SendClientMessage(playerid,ROT,"Du Bist Kein Admin!.");
{
if(!isPlayerAnAdmin(playerid,2000))return SendClientMessage(playerid,ROT,"Du bist kein Admin!.");
}
new pID, reason[128],string[128];
if(sscanf(params,"us",pID,reason))return SendClientMessage(playerid,ORANGE,"/kick [ID] [Grund]");
format(string,sizeof(string),"=> %s wurde von %s gekickt. Grund: %s",SpielerName(pID),SpielerName(playerid),reason);
SendClientMessageToAll(ROT,string);
Kick(pID);
return 1;
}
villeicht könnt ihr mir mal wieder weiter helfen
Habs jetzt mit einen stock gemacht .. scheint jetzt zu gehen
new Float:hp
GetPlayerHealth(playerid,hp);
if(hp >= 50) return 1;
SetPlayerHealth(playerid,hp +50);
ich bin jetzt verwird wo soll das new den jetzt hien Ganz nach oben und der rest in das DIALOG_DRIVEIN rein oder wie ??
Wo soll ich das den Abfragen ?
new Float:hp
GetPlayerHealth(playerid,hp);
SetPlayerHealth(playerid,hp +50);
So hab ichs in meinem Script.
Also new Float:hp Ganz nach oben im script oda ? und
und
GetPlayerHealth(playerid,hp);
SetPlayerHealth(playerid,hp +50);
das kommt dahien wo ich das jetztige SetPlayerHealth habe oda ?
Abend
Also ich habe ein kleines Problem und zwar, habe ich ein Drivein Dialog gemacht da steht "Chesse Bruger Chicken Burger" usw.. nur mein problem ist sobalt ich in das pickup reinfahre mit einem fahrzeug und was aus der liste auswähle wird mir nur Geld abgezogen was ja soweit auch Ok ist aber ich bekomme keine 50HP so wie ich es eingestellt habe ..
Mein Dialog
if(dialogid == DIALOG_DRIVEIN)
{
if(response==0)
{
switch(listitem)
{
case 0:
{
GivePlayerMoney(playerid,-50);
SetPlayerHealth(playerid,50);
SendClientMessage(playerid,GELB,"Bestellt");
}
case 1:
{
GivePlayerMoney(playerid,-50);
SetPlayerHealth(playerid,50);
SendClientMessage(playerid,GELB,"Bestellt");
}
case 2:
{
GivePlayerMoney(playerid,-50);
SetPlayerHealth(playerid,50);
SendClientMessage(playerid,GELB,"Bestellt");
}
case 3:
{
GivePlayerMoney(playerid,-50);
SetPlayerHealth(playerid,50);
SendClientMessage(playerid,GELB,"Bestellt");
}
}
}
return 1;
}
MFG: Equ_Res