Es ist alles richtig nur er führt irgendwie die Taste "N" nicht richtig aus..
Grüße
Es ist alles richtig nur er führt irgendwie die Taste "N" nicht richtig aus..
Grüße
Ich bin kein Anfänger mehr ich weis selbst das man hierbei IsPlayerInRangeOfPoint nutzen sollte, aber trotzdem danke für den Hinweis ^^.
So es funktioniert immer noch nicht eure Methoden habe ich schon längst probiert gehabt mein Code sieht nun so aus:
if(newkeys & KEY_CTRL_BACK) // Das funktz einwandfrei nur KEY_NO nicht..
{
// ENTER
// LSPD Enter von Gerage
if(isPlayerInFrakt(playerid,1))
if(IsPlayerInRangeOfPoint(playerid,2.0,1568.6735,-1691.3983,5.8906))
{
SetPlayerPos(playerid,215.0270,113.6364,999.0156);
SetPlayerInterior(playerid,10);
}
if(newkeys & KEY_NO) // Ja ich weis das ist nicht Die "NUM 2" Taste das ist die | "N" Taste.
{
// LSPD Konto
if(IsPlayerInRangeOfPoint(playerid,2.0, 233.4856,125.7596,1003.2188))
if(IsPlayerFraktionsLeader(playerid,1))
{
ShowPlayerDialog(playerid, DIALOG_LSPDBANK,DIALOG_STYLE_LIST,"LSPD Bank","Geld Einzahlen\nGeld Abheben\nKontostand","Okay","Abbrechen");
}
Grüße
Abend
Ich hab mal eine Frage, und zwar habe ich auf der Taste "H" etwas definiert,
so jetzt möchte ich aber auf einer Anderen Taste "NUM 2" etwas definieren also wie gehe ich nun weiter vor ?
Code:
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
if(newkeys & KEY_CTRL_BACK)
{
// ENTER
// LSPD Enter von Gerage
if(isPlayerInFrakt(playerid,1))
if(IsPlayerInRangeOfPoint(playerid,2.0,1568.6735,-1691.3983,5.8906))
{
SetPlayerPos(playerid,215.0270,113.6364,999.0156);
SetPlayerInterior(playerid,10);
}
}
return 1;
}
Grüße
Habe dies unter, OnGameModeInit
hab es dir aber oben noch mal Editiert gehabt
Grüße
Hatte mal genau das selbe Problem gehabt und hab einen kollegen damals gefragt gehabt ob er wüsste was man dagegen machen könnte, er sagte zu mir Probier doch mal diese Funtkion aus:
unter OnGameModeInit:
Streamer_VisibleItems(STREAMER_TYPE_OBJECT,1000);
und es hat geklappt, er hat die ganzen objecte bei mir direkt geladen,
kannst es ja auch mal versuchen vielleicht hilft es dir ja
Grüße
Du musst das so machen:
new Objekt1 = CreateDynamicObject(18766, 1806.73083, -1742.79749, 15.02510, 0.00000, 0.00000, 0.00000);
SetDynamicObjectMaterial(Objekt1,0,4006,"lanblkd", "citywall1", 0);
Grüße
Abend
Ich hab ein kleines Problem mit meinem /admins befehl
und zwar, wenn ich /admins eingebe, werden die gewollten Admins angezeigt,
nur das Problem ist mit den Rängen irgendwie, wenn ich Leitung bin ist der andere Admin auch Leitung, warum ?
Code:
ocmd:admins(playerid,params[])
{
new string[128],bool:online;
new adminrank[64];
for(new i=0; i<GetMaxPlayers(); i++)
{
if(!IsPlayerConnected(i))continue;
if(!IsPlayerNPC(i))
if(GetPVarInt(i,"Adminlevel") >= 1)
{
if(online == false)
{
switch(GetPVarInt(i,"Aduty"))
{
case 1:{adminrank="Supporter";}
case 2:{adminrank="Admin";}
case 3:{adminrank="Headadmin";}
case 4:{adminrank="Leitung";}
case 5:{adminrank="Manager";}
case 6:{adminrank="Designer";}
case 7:{adminrank="Sponsor";}
}
SendClientMessage(playerid,0x00B71EFF,"Admins/Supporter Online:");
SendClientMessage(playerid,WEIS,"{007F9A}Aufbau: {C8C8C8}Rank | Name | Adminlevel");
SendClientMessage(playerid,WEIS,"");
format(string,sizeof(string),"%s: %s [Level: %i]",adminrank,SpielerName(i),GetPVarInt(i,"Adminlevel"));
SendClientMessage(playerid,GRAU,string);
online = true;
}
else
{
format(string,sizeof(string),"%s: %s [Level: %i]",adminrank,SpielerName(i),GetPVarInt(i,"Adminlevel"));
SendClientMessage(playerid,WEIS,string);
}
}
}
if(online == false)
{
SendClientMessage(playerid,ROT,"Derzeit ist kein Admin/Supporter Online");
}
return 1;
}
Grüße
Moin
Ich hab ein kleines Problem und zwar,
habe ich 2 Balken gemacht die beim Connecten angezeigt werden sollen, Funktioniert auch Perfekt!
nun habe ich es so gemacht so bald man Spawnen tut sollten sie Verschwinden aber es funktioniert einfach nicht?
Die TextDraws bleiben immer noch da, warum ?
Code:
OnPlayerSpawn
TextDrawHideForPlayer(playerid,ConnectBalken1);
TextDrawHideForPlayer(playerid,ConnectBalken2);
OnPlayerConnect:
ConnectBalken1 = TextDrawCreate(639.666687, 0.000000, "LD_SPAC:white");
TextDrawLetterSize(ConnectBalken1, 0.000000, 0.000000);
TextDrawTextSize(ConnectBalken1, -639.666687, 145.185180);
TextDrawAlignment(ConnectBalken1, 1);
TextDrawColor(ConnectBalken1, 255);
TextDrawSetShadow(ConnectBalken1, 0);
TextDrawSetOutline(ConnectBalken1, 0);
TextDrawFont(ConnectBalken1, 4);
TextDrawShowForPlayer(playerid,ConnectBalken1);
ConnectBalken2 = TextDrawCreate(0.000000, 447.585205, "LD_SPAC:white");
TextDrawLetterSize(ConnectBalken2, 0.000000, 0.000000);
TextDrawTextSize(ConnectBalken2, 640.000000, -145.600036);
TextDrawAlignment(ConnectBalken2, 1);
TextDrawColor(ConnectBalken2, 255);
TextDrawSetShadow(ConnectBalken2, 0);
TextDrawSetOutline(ConnectBalken2, 0);
TextDrawFont(ConnectBalken2, 4);
TextDrawShowForPlayer(playerid,ConnectBalken2);
hoffe ihr findet das Problem
Grüße
Alles anzeigenDer folgende Code sollte (hoffentlich) komplett funktionieren
ocmd:admins(playerid,params[])
{
new string[56],bool:online;
for(new i=0; i<GetMaxPlayers(); i++)
{
if(!IsPlayerConnected(i))continue;
if(GetPVarInt(i,"Adminlevel") >= 1) && if(!IsPlayerNPC(i))
{
if(online == false)
{
SendClientMessage(playerid,GELB,"Admins Online:");
format(string,sizeof(string),"Admin %s",SpielerName(i));
SendClientMessage(playerid,WEIS,string);
online = true;
}
else
{
format(string,sizeof(string),"Admin %s",SpielerName(i));
SendClientMessage(playerid,WEIS,string);
}
}
}
if(online == false)
{
SendClientMessage(playerid,weiß,"Es ist momentan kein Admin online.");
}
return 1;
}
@[SoA]TheBester: hast du deinen Code auch schonmal mit mehreren Leuten ausprobiert?...Ein return beendet eine Schleife wie z.B ein "break;" sobald es ausgeführt wird
/edit: hab den Code noch etwas optimiert
Ich danke dir CodeX!
Funktioniert nun perfekt, ehrlich danke
Grüße
Okay es scheint zu funktionieren, nur das Problem ist es werden auch meine NPC angezeigt bei der Admin online liste..
entziehe ich mir die admin rechte und gebe /admins ein kommt wie gewollt Kein admin online.. nur bleibt das problem mit den NPCs
stock IstSpielerAdmin(playerid,rang)
{
if(GetPVarInt(playerid,"Adminlevel")>=rang)return 1; //wenn du jz das hast if(IsSpielerAdmin(playerid,1), dann werden alle Spieler ÜBER Adminlevel 1 angezeigt ^^
return 0;
}
ocmd:admins(playerid,params[])
{
new string[128],var;
for(new i=0; i<GetMaxPlayers(); i++)
{
if(IsPlayerConnected(i))
{
if(!IstSpielerAdmin(playerid,1)) return SendClientMessage(playerid,GRUN,"Kein Admin online.");
{
SendClientMessage(playerid,GELB,"Admins Online:");
format(string,sizeof(string),"Admin %s",SpielerName(i));
SendClientMessage(playerid,WEIS,string);
var++;
}
}
}
return 1;
}
grüße
Alles anzeigenso jz müsste es 100% funktionieren:
stock IstSpielerAdmin(playerid,rang)
{
if(GetPVarInt(playerid,"Adminlevel")>=rang)return 1; //wenn du jz das hast if(IsSpielerAdmin(playerid,1), dann werden alle Spieler ÜBER Adminlevel 1 angezeigt ^^
return 0;
}
ocmd:admins(playerid,params[])
{
new string[128],var;
for(new i=0; i<GetMaxPlayers(); i++)
{
if(IsPlayerConnected(i))
{
if(!IstSpielerAdmin(playerid,1)) return SendClientMessage(playerid,GRUN,"Kein Admin online.");
{
SendClientMessage(playerid,GELB,"Admins Online:");
format(string,sizeof(string),"Admin %s",SpielerName(i));
SendClientMessage(playerid,WEIS,string);
var++;
}
}
}
return 1;
}
Bei diesem Befehl jetzt wird doch nur der Spieler mit dem Adminlevel 1 abgefragt ich möchte ja Adminlevel von 1 - 2000 abfragen ..
Das wird nicht funktionieren da es ja dann nicht mehr richtig returnt wird ..
ocmd:admins(playerid,params[])
{
new string[128],var;
for(new i=0; i<GetMaxPlayers(); i++)
{
if(IsPlayerConnected(i))
{
if(GetPVarInt(i,"Adminlevel") >= 1) return SendClientMessage(playerid,GRUN,"Kein Admin online.");
{
SendClientMessage(playerid,GELB,"Admins Online:");
format(string,sizeof(string),"Admin %s",SpielerName(i));
SendClientMessage(playerid,WEIS,string);
var++;
}
}
}
return 1;
}
mhm geht immer noch nicht ..
ocmd:admins(playerid,params[])
{
new string[128],var;
for(new i=0; i<GetMaxPlayers(); i++)
{
if(IsPlayerConnected(i))
{
if(GetPVarInt(i,"Adminlevel") >= 1) return SendClientMessage(playerid,GRUN,"Kein Admin online.");
{
SendClientMessage(playerid,GELB,"Admins Online:");
format(string,sizeof(string),"Admin %s",SpielerName(i));
SendClientMessage(playerid,WEIS,string);
var++;
}
}
}
return 1;
}
und jetzt kommt
Admins Online:
Admin: dann steht dort mein NPC
Kein admin online.
..
Dieser Befehl geht genau so wenig
Jetzt kommt die nachricht Admins online 10x oder so..
ocmd:admins(playerid,params[])
{
new string[128],var;
for(new i=0; i<Get_Max_Players(); i++)
{
if(GetPVarInt(i,"Adminlevel") <= 1)
{
SendClientMessage(playerid,GELB,"Admins Online:");
format(string,sizeof(string),"Admin %s",SpielerName(i));
SendClientMessage(playerid,WEIS,string);
var++;
}
}
if(var == 0) SendClientMessage(playerid,-1,"Kein Admin online :<");
return 1;
}
Dies bin ich mir schon bewust, habe es ja auch schon mit einen ! gemacht aber funktz nicht
@TheBlueFireKing wenn ich dein Code nehme
Kommt Admin Online 10-20x oder so..
Grüße
So habe nun den Code überarbeitet aber es funktioniert immer noch nicht richtig,
wenn ich das eingebe kommt die Message ( Kein Admin online.) obwohl ich Admin bin..
Code:
ocmd:admins(playerid,params[])
{
new string[128],var;
for(new i=0; i<GetMaxPlayers(); i++)
{
if(IsPlayerConnected(i))return SendClientMessage(playerid,GRUN,"Kein Admin online.");
{
if(GetPVarInt(i,"Adminlevel") >= 1)
{
SendClientMessage(playerid,GELB,"Admins Online:");
format(string,sizeof(string),"Admin %s",SpielerName(i));
SendClientMessage(playerid,WEIS,string);
var++;
}
}
}
return 1;
}
Grüße
Hallo
Ich habe ein kleines Problem mit meinem Befehl
und zwar gebe ich /admins ein und nichts passiert, woran könnte es liegen ?
Code:
ocmd:admins(playerid,params[])
{
new string[128],var;
for(new i=0; i<GetMaxPlayers(); i++)
{
if(!IsPlayerConnected(i))
{
if(GetPVarInt(i,"Adminlevel") >= 1)
{
SendClientMessage(playerid,GELB,"Admins Online:");
format(string,sizeof(string),"Admin %s",SpielerName(i));
SendClientMessage(playerid,WEIS,string);
var++;
}
}
}
return 1;
}
Also, es funktioniert soweit eigentlich alles bis auf das der Spieler der eigentlich kein Admin ist, in der "Admin Online" liste angezeigt wird.
eigentlich sollten dort nur Admins angezeigt werden die auch den Admin Rang besitzen
Code:
public OnPlayerCommandText(playerid, cmdtext[])
{
if(!strcmp("/admins", cmdtext, true))
{
SendClientMessage(playerid,GRUN,"Admins online:");
new string[128],name[MAX_PLAYER_NAME],var;
for(new i=0;i<MAX_PLAYERS;i++)
{
if(IsPlayerConnected(i) && isPlayerAnAdmin(i,1))
{
GetPlayerName(i,name,sizeof(name));
format(string, sizeof(string), "- Admin %s",SpielerName(i));
SendClientMessage(playerid,WEIS,string);
var++;
}
}
if(!var)
SendClientMessage(playerid,ROT,"Kein Admin Online");
}
new string[128];
format(string,sizeof(string),"{A8BCB5}Der angebende Befehl {B7320E}%s {A8BCB5}Existiert nicht",cmdtext);
return SendClientMessage(playerid,WEIS,string);
}
Grüße
könntest du es mir ein wenig mehr erklären weil nur mit einem Code selber kann ich nicht viel anfangen
Grüße
Moin
Ich hab mal eine kleine Frage,
Und zwar wie erstellt man einen Befehl der mehrere Spieler in einer Liste anzeigen lässt, also Beispiel.
Fraktions Mitglieder:
- Stinki, Torsten, harald, usw..
hoffe ihr habt meine Frage verstanden
Grüße