hi,
hab vor paar tagen mit scripten angefangen. und steh vor einer frage. ich möchte meinen skin nur Für meinen namen (patoo) zugänglich machen. wie kann man das machen?
hi,
hab vor paar tagen mit scripten angefangen. und steh vor einer frage. ich möchte meinen skin nur Für meinen namen (patoo) zugänglich machen. wie kann man das machen?
Bei weiteren Fragen einfach melden
#define PATOO_SEINER_SKIN (32) //Die SkinID die für PATOO sein soll ^^ In dem Fall 32
public OnPlayerRequestClass(playerid,classid)
{
new spielername[MAX_PLAYER_NAME];
GetPlayerName(playerid, spielername, sizeof(spielername));
if(GetPlayerSkin(playerid) == PATOO_SEINER_SKIN && strcmp(spielername, "patoo", false))
{
SendClientMessage(playerid,COLOR_GREEN,"Dieser Skin ist nur für patoo erlaubt!");
return 0; //Hindere Spieler am Spawnen mit diesem Skin!
}
return 1;
}
public OnPlayerRequestClass(playerid, classid)
{
SetPlayerPos(playerid,213.4466,1822.9019,6.4141);
SetPlayerFacingAngle(playerid, 271.4330);
SetPlayerCameraPos(playerid,217.0341,1822.7776,6.4141);
SetPlayerCameraLookAt(playerid,213.4466,1822.9019,6.4141);
return 1;
}
#define Admin_pato (206)
{
new spielername[MAX_PLAYER_NAME];
GetPlayerName(playerid, spielername, sizeof(spielername));
if(GetPlayerSkin(playerid) == Admin_pato && strcmp(spielername, "pato", false))
{
SendClientMessage(playerid,0x37FF00FF,"Dieser Skin ist nur für pato erlaubt!");
return 0;
}
return 1;
}
und die errors
C:\Users\pato\Desktop\Patomod.pwn(111) : error 055: start of function body without function header
C:\Users\pato\Desktop\Patomod.pwn(113) : error 021: symbol already defined: "GetPlayerName"
C:\Users\pato\Desktop\Patomod.pwn(114) : error 010: invalid function or declaration
C:\Users\pato\Desktop\Patomod.pwn(117) : error 010: invalid function or declaration
C:\Users\pato\Desktop\Patomod.pwn(119) : error 010: invalid function or declaration
C:\Users\pato\Desktop\Patomod.pwn(166) : warning 203: symbol is never used: "spielername" //das die letzte zeile ind da steht dann nur return 0; und dann zeie tiefer die klammer }
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
5 Errors.
mach mal new spielername weg wel so muste eigendlich den enum heidsen
das
#define Admin_pato (206)
gehört nach ganz oben im gamemode!!
dann heißt es so:
#define Admin_pato (206) //oben unter den #defines kopieren!!
//OnPlayerRequestClass heißt so:
public OnPlayerRequestClass(playerid, classid)
{
SetPlayerPos(playerid,213.4466,1822.9019,6.4141);
SetPlayerFacingAngle(playerid, 271.4330);
SetPlayerCameraPos(playerid,217.0341,1822.7776,6.4141);
SetPlayerCameraLookAt(playerid,213.4466,1822.9019,6.4141);
new spielername[MAX_PLAYER_NAME];
GetPlayerName(playerid, spielername, sizeof(spielername));
if(GetPlayerSkin(playerid) == Admin_pato && strcmp(spielername, "pato", false))
{
SendClientMessage(playerid,0x37FF00FF,"Dieser Skin ist nur für pato erlaubt!");
return 0;
}
return 1;
}
Versuchs ma so bitte!!
{
new spielername[MAX_PLAYER_NAME];
GetPlayerName(playerid, spielername, sizeof(spielername));
if(GetPlayerSkin(playerid) == Admin_pato && strcmp(spielername, "pato", false))
{
SendClientMessage(playerid,0x37FF00FF,"Dieser Skin ist nur für pato erlaubt!");
return 0;
}
return 1;
}
Was mit der public?
Das brauchst du natürlich auch.
mhh bekomms immer noch nicht so recht hin. kann vll jemand ein tut machen wie man das macht. und den link dann hier rein posten?
schonmal danke,
1. Nein, define gehört nicht nach ganz oben, sondern einfach nur oberhalb der Stelle, wo man's braucht.. (Natürlich kanns auch ganz oben hin)
2. strcmp nicht mit false sondern mit true:
strcmp(spielername, "pato", true) // Wenn name nicht pato ist
!strcmp(spielername, "pato", true) // Wenn name pato ist
#define Admin_pato (206)
public OnPlayerRequestClass(playerid, classid)
{
SetPlayerPos(playerid,213.4466,1822.9019,6.4141);
SetPlayerFacingAngle(playerid, 271.4330);
SetPlayerCameraPos(playerid,217.0341,1822.7776,6.4141);
SetPlayerCameraLookAt(playerid,213.4466,1822.9019,6.4141);
new spielername[MAX_PLAYER_NAME];
GetPlayerName(playerid, spielername, sizeof(spielername));
if(GetPlayerSkin(playerid) == Admin_pato && strcmp(spielername, "pato", true))
{
SendClientMessage(playerid,0x37FF00FF,"Dieser Skin ist nur für pato erlaubt!");
return 0;
}
return 1;
}
Trotzdem kann ihn jeder benutzen, da du bisther einfach nur eine Message gescriptet hast.
genau das möcht ich net den soll nur ich benutzen können. keinen wirds hindern den zu nehmen wenn da nur ne servermassage steht.
Dank dem return 0; kann der Skin aber nicht von anderen genommen werden!
ao habsgeschaft nur ich spawne mit skin 0 also cj und in der auswahl wird er nicht richtig angezeigt
Wurde der Skin mit AddPlayerClass hinzugefügt?
ja kla wenn ich das rauslasse dann kann ich den skin auch nehmen nur leider können das dann alle
Versuche es dann so, wie in der Datei zu sehen.
danke hat geklappt