Jo, das Geschenk Script von Theo Lightz funktioniert nicht bzw nur teilweise,
wenn man /ginfo öffnet öffnet sich ein Dialog den man aber nicht weiter benutzen kann..
Pawno Filterscript:(Öffnen)
[/expander]
/*
Geschenke Event system.
*/
#include <a_samp>
#include <ocmd>
#define MIN_GELD 1 //Wie viel Geld er beim finden minimum bekommen soll
#define MAX_GELD 9238//Wie viel er maximum bekommen kann
#define MAX_GESCHENKE 20
enum Geschenke
{
Float:x,
Float:y,
Float:z,
Gefunden,
Text3D:Label,
finder[24],
OB
}
new g[MAX_GESCHENKE][Geschenke];
new Max_G = 0;
new Gefundene = 0;
new hut[MAX_PLAYERS];
new Geschenk[MAX_PLAYERS];
new gAn = 0;
public OnFilterScriptInit()
{
print("\n--------------------------------------");
print(" Geschenke Event geladen /cgeschenk!");
print("--------------------------------------\n");
return 1;
}
public OnFilterScriptExit()
{
for(new i = 0; i < MAX_GESCHENKE ;i++)
{
DestroyObject(g[i][OB]);
Delete3DTextLabel(g[i][Label]);
}
return 1;
}
ocmd:cgeschenk(playerid)
{
if(IsPlayerAdmin(playerid))
{
Max_G += 1;
new Float:p[3];
GetPlayerPos(playerid,p[0],p[1],p[2]);
g[Max_G][x] = p[0];
g[Max_G][y] = p[1];
g[Max_G][z] = p[2];
g[Max_G][Gefunden] = 0;
new randomg[][5] =
{
{19054},
{19055},
{19056},
{19057},
{19058}
};
new rand = random(sizeof(randomg));
g[Max_G][OB] = CreateObject(randomg[rand][0],p[0],p[1],p[2]-0.2,0,0,0);
SetPlayerPos(playerid,p[0],p[1],p[2]+2);
printf("Geschenk: %d",Max_G);
printf("Geschenks %d",MAX_GESCHENKE);
}
return 1;
}
ocmd:findgeschenk(playerid,params[])
{
if(gAn == 1)
{
for(new i = 0; i < MAX_GESCHENKE; i++)
{
new name[24],string[128];
GetPlayerName(playerid, name, 24);
if(IsPlayerInRangeOfPoint(playerid,4,g[i][x],g[i][y],g[i][z]))
{
if(g[i][Gefunden] == 0)
{
Gefundene += 1;
if(Gefundene == 1)
{
format(string,128,"Geschenke Event: **** %s [ID:%d] hat das erste Geschenk gefunden!",name,playerid);
SendClientMessageToAll(0xFF00CDFF,string);
}
format(string,128,"Dieses Geschenk wurde von %s Gefunden",name);
g[i][Label] = Create3DTextLabel(string,0x00FF46FF,g[i][x],g[i][y],g[i][z],15,0,0);
GameTextForPlayer(playerid,"~w~G~r~e~w~s~r~c~r~h~w~e~r~n~r~k",3000,1);
new var = Random(1, 4);
Geschenk[playerid] = var;
if(Geschenk[playerid] == 1)
{
new cash = Random(MIN_GELD, MAX_GELD);
GivePlayerMoney(playerid, cash);
format(string,128,"Im Geschenk waren %d $",cash);
SendClientMessage(playerid,0x00FF46FF,string);
if(hut[playerid] == 0)
{
SendClientMessage(playerid,0x00FF46FF,"Und ein Santa Klaus Hut.");
SetPlayerAttachedObject(playerid,0,19064,2,0.116999,0.014000,0.000000,80.299995,104.499984,1.700000,1.000000,1.000000,1.000000);
hut[playerid] = 1;
}
return 1;
}
else if(Geschenk[playerid] == 2)
{
SendClientMessage(playerid,0xFF002DFF,"Du hattest kein Glück! In dem Geschenk war eine Stinkige Socke!");
if(hut[playerid] == 0)
{
SendClientMessage(playerid,0x00FF46FF,"Aber in der Socke war ein Hut!");
SetPlayerAttachedObject(playerid,0,19064,2,0.116999,0.014000,0.000000,80.299995,104.499984,1.700000,1.000000,1.000000,1.000000);
hut[playerid] = 1;
}
return 1;
}
else if(Geschenk[playerid] == 3)
{
SendClientMessage(playerid,0xFF002DFF,"Du hattest kein Glück! Jemand hat hier ein leeres Geschenk hingestellt");
if(hut[playerid] == 0)
{
SendClientMessage(playerid,0x00FF46FF,"Aber du nimmst den Hut der dran gebunden ist.");
SetPlayerAttachedObject(playerid,0,19064,2,0.116999,0.014000,0.000000,80.299995,104.499984,1.700000,1.000000,1.000000,1.000000);
hut[playerid] = 1;
}
return 1;
}
return g[i][Gefunden] = 1;
}
else if(g[i][Gefunden] == 1)
{
SendClientMessage(playerid,0xFF002DFF,"Dieses Geschenk wurde schon gefunden!");
return 1;
}
return 1;
}
}
}
else
{
SendClientMessage(playerid,0xFF002DFF,"Das Geschenke Event hat noch nicht angefangen!");
}
return 1;
}
ocmd:ginfo(playerid)
{
if(IsPlayerAdmin(playerid))
{
if(gAn == 0)
{
ShowPlayerDialog(playerid,5555,DIALOG_STYLE_LIST,"Geschenke-Event","{FFFFFF}Geschenke Anzahl\n{FFFFFF}Status {FFFFFF}[{FF0000}Off{FFFFFF}]","Okey","Close");
}
else if(gAn == 1)
{
ShowPlayerDialog(playerid,5555,DIALOG_STYLE_LIST,"Geschenke-Event","{FFFFFF}Geschenke Anzahl\n{FFFFFF}Status {FFFFFF}[{00FF50}On{FFFFFF}]","Okey","Close");
}
}
return 1;
}
ocmd:ghelp(playerid)
{
SendClientMessage(playerid,0x00FF46FF,"GESCHENKE-EVENT: /findgeschenk Um ein Geschenk zu öffnen!");
if(IsPlayerAdmin(playerid)){SendClientMessage(playerid,0x00FF46FF,"Admin: /ginfo /cgeschenk");}
return 1;
}
public OnPlayerSpawn(playerid)
{
SendClientMessage(playerid,-1,"{FF9600}GESCHENKE-EVENT: {FFFFFF}/findgeschenk Um ein Geschenk zu öffnen!");
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == 5555)
{
new string[200];
if(response)
{
if(listitem == 0)
{
format(string,200,"{FFFFFF}Es befinden sich {FFFF00}%d {FFFFFF}Geschenke auf dem Server.\n{FFFFFF}Davon wurden {FFFF00}%d {FFFFFF}Gefunden.\n{FF00CD}Möchtest du das den Spielern Mitteilen?",Max_G,Gefundene);
ShowPlayerDialog(playerid,6666,DIALOG_STYLE_MSGBOX,"Geschenke-Event",string,"Senden","Close");
}
if(listitem == 1)
{
if(gAn == 0)
{
gAn = 1;
ShowPlayerDialog(playerid,5555,DIALOG_STYLE_LIST,"Geschenke-Event","{FFFFFF}Geschenke Anzahl\n{FFFFFF}Status {FFFFFF}[{00FF50}On{FFFFFF}]","Okey","Close");
format(string,128,"Es befinden sich {FFFF00}%d {FFFFFF}Geschenke auf dem Server!",Max_G);
SendClientMessageToAll(0xFF00CDFF,"||=========| Geschenke-Event |=========||");
SendClientMessageToAll(-1,string);
SendClientMessageToAll(0xFF9600FF,"INFO: Du kannst sie mit /findgeschenk Öffnen!");
SendClientMessageToAll(0xFF00CDFF,"||=========| Geschenke-Event |=========||");
}
if(gAn == 1)
{
gAn = 0;
ShowPlayerDialog(playerid,5555,DIALOG_STYLE_LIST,"Geschenke-Event","{FFFFFF}Geschenke Anzahl\n{FFFFFF}Status {FFFFFF}[{FF0000}Off{FFFFFF}]","Okey","Close");
format(string,128,"Das Geschenke Event ist nun vorbei, es wurden {FFFF00}%d {FFFFFF}Geschenke gefunden!",Gefundene);
SendClientMessageToAll(0xFF00CDFF,"||=========| Geschenke-Event |=========||");
SendClientMessageToAll(-1,string);
SendClientMessageToAll(0xFF00CDFF,"||=========| Geschenke-Event |=========||");
}
}
}
return 1;
}
if(dialogid == 6666)
{
if(response == 1)
{
new string[128];
format(string,128,"Es befinden sich {FFFF00}%d {FFFFFF}Geschenke auf dem Server!",Max_G);
SendClientMessageToAll(0xFF00CDFF,"||=========| Geschenke-Event |=========||");
SendClientMessageToAll(-1,string);
format(string,128,"{FFFFFF}Davon wurden {FFFF00}%d {FFFFFF}Gefunden.",Gefundene);
SendClientMessageToAll(-1,string);
SendClientMessageToAll(0xFF9600FF,"INFO: Du kannst sie mit /findgeschenk Öffnen!");
SendClientMessageToAll(0xFF00CDFF,"||=========| Geschenke-Event |=========||");
return 1;
}
}
return 1;
}
stock Random(min, max)
{
return random(max - min) + min;
}
[/expander]