Ittvan néhány kód amit a gamemode-ba kell beilleszteni,mert ha scriptbe teszem akkor nem mûködik tökéletesen
Szükséges include (progress):
http://toribio.pastebin.com/TrJXUKtCMikor elõször spawnol a gyerek akkor elkezdi tölteni a gamet...igazábol csak díszítésnek jó,meg arra,hogy elolvassák,hogy mi a szerver lényege meg amit odaírsz szóval hasznos is.
Kép:
http://kephost.hu/image-7946_4CA8BF72.jpgMód elejére:
#include <progress>
//#define COLOR_WHITE 0xFFFFFFAA
#define TOLTES 10 //ide írd,hogy hány mp alatt töltõdjön be
#define RETURN return 1; }
Ezeket is valahova az elejére:
new Bar:loading;
new bool:betoltott[MAX_PLAYERS];
new Text:toltes;
new Text:jatek;
forward toltodikamap1(playerid);
forward toltodikamap2(playerid);
forward toltodikamap3(playerid);
forward toltodikamap4(playerid);
forward toltodikamap5(playerid);
forward toltodikamap6(playerid);
Ezeket valamelyik public fölé:
public toltodikamap1(playerid)
{
SetProgressBarValue(loading, 20);
UpdateProgressBar(loading, playerid);
RETURN
public toltodikamap2(playerid)
{
SetProgressBarValue(loading, 40);
UpdateProgressBar(loading, playerid);
RETURN
public toltodikamap3(playerid)
{
SetProgressBarValue(loading, 60);
UpdateProgressBar(loading, playerid);
RETURN
public toltodikamap4(playerid)
{
SetProgressBarValue(loading, 80);
UpdateProgressBar(loading, playerid);
RETURN
public toltodikamap5(playerid)
{
SetProgressBarValue(loading, 100);
UpdateProgressBar(loading, playerid);
RETURN
public toltodikamap6(playerid)
{
HideProgressBarForPlayer(playerid,loading);
SetPlayerVirtualWorld(playerid,0);
betoltott[playerid] = true;
SpawnPlayer(playerid);
SetCameraBehindPlayer(playerid);
TogglePlayerControllable(playerid,true);
TextDrawHideForPlayer(playerid,toltes);
TextDrawHideForPlayer(playerid,jatek);
RETURN
OnPlayerDisconnect alá:
betoltott[playerid] = false;
OnGameModeInit alá:
loading = CreateProgressBar(374.00, 366.00, 234.50, 14.19, 1687547306, 100.0);
toltes = TextDrawCreate(374,350,\"~r~Loading...\");
TextDrawFont(toltes,1);
TextDrawSetShadow(toltes,0);
jatek = TextDrawCreate(68,265,\"[HUN] Szerverem~n~~y~jatekmod lenyege: olj meg minel tobb embert~n~~y~es szerezz minel tobb pontot~n~~r~Segitsegert /help teleportok /tele~n~~g~Jo jatekot kivan az admin csapat!\");
TextDrawColor(jatek,0x33AA33AA);
TextDrawFont(jatek,1);
OnGameModeExit alá:
DestroyProgressBar(loading);
TextDrawDestroy(toltes);
TextDrawDestroy(jatek);
OnPlayerSpawn alá:
if(betoltott[playerid] == false){
new rand = random(3);
new cucc = TOLTES * 1000 - 8000;
new cucc2 = TOLTES * 1000 - 6000;
new cucc3 = TOLTES * 1000 - 4000;
new cucc4 = TOLTES * 1000 - 2000;
new cucc5 = TOLTES * 1000;
new cucc6 = TOLTES * 1000 + 500;
SetTimerEx(\"toltodikamap1\",cucc,0,\"i\",playerid);
SetTimerEx(\"toltodikamap2\",cucc2,0,\"i\",playerid);
SetTimerEx(\"toltodikamap3\",cucc3,0,\"i\",playerid);
SetTimerEx(\"toltodikamap4\",cucc4,0,\"i\",playerid);
SetTimerEx(\"toltodikamap5\",cucc5,0,\"i\",playerid);
SetTimerEx(\"toltodikamap6\",cucc6,0,\"i\",playerid);
SetPlayerVirtualWorld(playerid,55);
TogglePlayerControllable(playerid,false);
ShowProgressBarForPlayer(playerid,loading);
TextDrawShowForPlayer(playerid,toltes);
TextDrawShowForPlayer(playerid,jatek);
if(rand == 0){
SetPlayerCameraPos(playerid,141.9375,1927.7435,19.1933);
SetPlayerCameraLookAt(playerid,153.0080,1922.2366,18.8875);
SetPlayerPos(playerid,141.9375,1927.7435,26.1933);
}
if(rand == 1){
SetPlayerCameraPos(playerid,1475.7966,-1647.6646,15.1484);
SetPlayerCameraLookAt(playerid,1482.2134,-1640.1676,14.1484);
SetPlayerPos(playerid,1475.7966,-1647.6646,20.1484);
}
if(rand == 2){
SetPlayerCameraPos(playerid,-2741.7656,710.9208,42.1296);
SetPlayerCameraLookAt(playerid,-2732.6184,718.2512,41.2734);
SetPlayerPos(playerid,-2741.7656,710.9208,48.1296);
}
if(rand == 3){
SetPlayerCameraPos(playerid,696.6507,-1737.3748,14.2125);
SetPlayerCameraLookAt(playerid,705.6835,-1723.9795,8.6881);
SetPlayerPos(playerid,696.6507,-1737.3748,19.2125);
}
}
Az textdrawot írjátok át arra amire akarjátok én csak valamit beírtam.
Illetve a betöltésnél mutatott képeket is le cserélhetitek.
Meg még annyival turbózhatjátok,hogy a progress bar vagy a loading felirat villog nagyon jól néz ki
Ha scriptbe teszem azért nemjó mert, elindítja a töltést csak aztán a GM OnPlayerSpawn része miatt lespawnoltatja a játékost vhova máshova és homályos lesz a ház,ezért kell GM-be copyzni.
Ha valamit kifelejtettem szóljatok