Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- *** Sumber RipLagger ( Rasyid Ibnu P )
- *** Mood System updgrade by Zulkifli
- Version 1.2 | 2013
- Thanks to :
- - RipLagger
- - Zamaroht's TextDraw Editor Version 1.0RC2. (Nicolás Laurito)
- - Toribio ( Progress Bar 1.3.1 & Creating Progress Bar )
- - html-color-codes.info
- "Tolong jangan hapus creditsnya karena orang yang tidak menghapus
- creditsnya itu adalah orang yang mengerti"
- */
- #include <a_samp>
- #include <Progress>
- #include <foreach>
- #include <dini>
- #include <zcmd>
- #define COLOR_GREEN 0x33AA33AA
- new Text:Textdraw[6];
- new Bar:Hunger[MAX_PLAYERS] = {INVALID_BAR_ID, ...};
- new Bar:Bladder[MAX_PLAYERS] = {INVALID_BAR_ID, ...};
- new Bar:Energy[MAX_PLAYERS] = {INVALID_BAR_ID, ...};
- new Bar:Defecate[MAX_PLAYERS] = {INVALID_BAR_ID, ...};
- forward BarBladder();
- forward BarHunger();
- forward BarEnergy();
- forward BarDefecate();
- forward update();
- forward Pissing();
- forward Resting();
- forward Pooping();
- new pisst,
- Rest,
- Poop
- ;
- enum PlayerStats
- {
- blad,
- hunger,
- energy,
- defecate,
- piss,
- poop,
- rest
- };
- new PInfo[MAX_PLAYERS][PlayerStats];
- new PlayerLoopingAnim[MAX_PLAYERS];
- LoopingAnim(playerid,animlib[],animname[], Float:Speed, looping, lockx, locky, lockz, lp)
- {
- PlayerLoopingAnim[playerid] = 1;
- ApplyAnimation(playerid, animlib, animname, Speed, looping, lockx, locky, lockz, lp);
- }
- stock SaveMood(playerid)
- {
- if(IsPlayerConnected(playerid))
- {
- new file[64];
- new n[MAX_PLAYER_NAME];
- GetPlayerName(playerid,n,MAX_PLAYER_NAME);
- format(file, sizeof(file), "PMood/%s.ini", n);
- if(!dini_Exists(file)) dini_Create(file);
- PInfo[playerid][hunger] = floatround(GetProgressBarValue(Hunger[playerid]));
- PInfo[playerid][blad] = floatround(GetProgressBarValue(Bladder[playerid]));
- PInfo[playerid][energy] = floatround(GetProgressBarValue(Energy[playerid]));
- PInfo[playerid][defecate] = floatround(GetProgressBarValue(Defecate[playerid]));
- // Save
- dini_IntSet(file, "Hunger", PInfo[playerid][hunger]);
- dini_IntSet(file, "Bladder", PInfo[playerid][blad]);
- dini_IntSet(file, "Energy", PInfo[playerid][energy]);
- dini_IntSet(file, "Defecate", PInfo[playerid][defecate]);
- }
- return 1;
- }
- stock LoadMood(playerid)
- {
- new file[64];
- new n[MAX_PLAYER_NAME];
- GetPlayerName(playerid,n,MAX_PLAYER_NAME);
- format(file, sizeof(file), "PMood/%s.ini", n);
- // Load
- PInfo[playerid][hunger] = dini_Int(file, "Hunger");
- PInfo[playerid][blad] = dini_Int(file, "Bladder");
- PInfo[playerid][energy] = dini_Int(file, "Energy");
- PInfo[playerid][defecate] = dini_Int(file, "Defecate");
- return 1;
- }
- stock CreateMood(playerid)
- {
- new file[64];
- new n[MAX_PLAYER_NAME];
- GetPlayerName(playerid,n,MAX_PLAYER_NAME);
- format(file, sizeof(file), "PMood/%s.ini", n);
- if(!dini_Exists(file))
- {
- PInfo[playerid][hunger] = 80;
- PInfo[playerid][blad] = 80;
- PInfo[playerid][energy] = 80;
- PInfo[playerid][defecate] = 80;
- dini_Create(file);
- dini_Set(file, "Hunger", PInfo[playerid][hunger]);
- dini_Set(file, "Bladder", PInfo[playerid][blad]);
- dini_Set(file, "Energy", PInfo[playerid][energy]);
- dini_Set(file, "Defecate", PInfo[playerid][defecate]);
- }
- LoadMood(playerid);
- return 1;
- }
- public OnFilterScriptInit()
- {
- SetTimer("BarBladder", 150000, 1);
- SetTimer("BarHunger", 180000, 1);
- SetTimer("BarEnergy", 250000, 1);
- SetTimer("BarDefecate", 200000, 1);
- SetTimer("update", 500, 1);
- print(" \n----------------------");
- print(" Mood System was loaded.");
- print(" ----------------------\n");
- for(new playerid; playerid < MAX_PLAYERS; playerid++)
- {
- new Float:health;
- GetPlayerHealth(playerid, health);
- new HungerTime = SetPlayerHealth(playerid, health-2);
- //----------------------------------------------------------------------
- if(GetProgressBarValue(Hunger[playerid]) <= 10)
- {
- SetTimer("HungerTime", 10000, 1);
- SetProgressBarValue(Hunger[playerid], GetProgressBarValue(Hunger[playerid])-1);
- SendClientMessage(playerid, 0xFFFF00AA, " Kamu sedang kelaparan sekarang , belilah makanan! /eat");
- }
- if(GetProgressBarValue(Hunger[playerid]) > 0)
- {
- KillTimer(HungerTime);
- }
- if(GetProgressBarValue(Hunger[playerid]) > 100)
- {
- SetProgressBarValue(Hunger[playerid], 100.0);
- }
- //----------------------------------------------------------------------
- new BladderTime = SetPlayerHealth(playerid, health-2);
- if(GetProgressBarValue(Bladder[playerid]) <= 10)
- {
- SetTimer("BladderTime", 10000, 1);
- SetProgressBarValue(Bladder[playerid], GetProgressBarValue(Bladder[playerid])-1);
- SendClientMessage(playerid, 0xFFFF00AA, " Kamu harus pergi ke toilet , jika tidak setiap 10 detik darah berkurang! /pissing");
- }
- if(GetProgressBarValue(Bladder[playerid]) > 10)
- {
- KillTimer(BladderTime);
- }
- if(GetProgressBarValue(Bladder[playerid]) > 100)
- {
- SetProgressBarValue(Bladder[playerid], 100.0);
- }
- //----------------------------------------------------------------------
- new RestTime = SetPlayerHealth(playerid, health-3);
- if(GetProgressBarValue(Energy[playerid]) <= 10)
- {
- SetTimer("RestTime", 10000, 1);
- SetProgressBarValue(Energy[playerid], GetProgressBarValue(Energy[playerid])-1);
- SendClientMessage(playerid, 0xFFFF00AA, " Kamu membutuhkan istirahat sekarang sekarang! /rest");
- }
- if(GetProgressBarValue(Energy[playerid]) > 10)
- {
- KillTimer(RestTime);
- }
- if(GetProgressBarValue(Energy[playerid]) > 100)
- {
- SetProgressBarValue(Energy[playerid], 100.0);
- }
- //----------------------------------------------------------------------
- new DefecateTime = SetPlayerHealth(playerid, health-2);
- if(GetProgressBarValue(Defecate[playerid]) <= 10)
- {
- SetTimer("DefecateTime", 10000, 1);
- SetProgressBarValue(Defecate[playerid], GetProgressBarValue(Defecate[playerid])-1);
- SendClientMessage(playerid, 0xFFFF00AA, " Kamu harus buang air besar sekarang! /poop");
- }
- if(GetProgressBarValue(Defecate[playerid]) > 10)
- {
- KillTimer(DefecateTime);
- }
- if(GetProgressBarValue(Defecate[playerid]) > 100)
- {
- SetProgressBarValue(Defecate[playerid], 100.0);
- }
- //----------------------------------------------------------------------
- }
- Textdraw[0] = TextDrawCreate(138.000000, 95.000000, " ");
- TextDrawBackgroundColor(Textdraw[0], 255);
- TextDrawFont(Textdraw[0], 2);
- TextDrawLetterSize(Textdraw[0], 0.300000, 9.900003);
- TextDrawColor(Textdraw[0], -1);
- TextDrawSetOutline(Textdraw[0], 0);
- TextDrawSetProportional(Textdraw[0], 1);
- TextDrawSetShadow(Textdraw[0], 1);
- TextDrawUseBox(Textdraw[0], 1);
- TextDrawBoxColor(Textdraw[0], 60);
- TextDrawTextSize(Textdraw[0], 15.000000, 0.000000);
- TextDrawSetSelectable(Textdraw[0], 0);
- Textdraw[1] = TextDrawCreate(39.000000, 93.000000, "rasa lapar");
- TextDrawBackgroundColor(Textdraw[1], 255);
- TextDrawFont(Textdraw[1], 2);
- TextDrawLetterSize(Textdraw[1], 0.300000, 0.800000);
- TextDrawColor(Textdraw[1], -128);
- TextDrawSetOutline(Textdraw[1], 0);
- TextDrawSetProportional(Textdraw[1], 1);
- TextDrawSetShadow(Textdraw[1], 0);
- TextDrawSetSelectable(Textdraw[1], 0);
- Textdraw[2] = TextDrawCreate(27.000000, 114.000000, "buang air kecil");
- TextDrawBackgroundColor(Textdraw[2], 255);
- TextDrawFont(Textdraw[2], 2);
- TextDrawLetterSize(Textdraw[2], 0.300000, 0.800000);
- TextDrawColor(Textdraw[2], -128);
- TextDrawSetOutline(Textdraw[2], 0);
- TextDrawSetProportional(Textdraw[2], 1);
- TextDrawSetShadow(Textdraw[2], 0);
- TextDrawSetSelectable(Textdraw[2], 0);
- Textdraw[3] = TextDrawCreate(51.000000, 134.000000, "tenaga");
- TextDrawBackgroundColor(Textdraw[3], 255);
- TextDrawFont(Textdraw[3], 2);
- TextDrawLetterSize(Textdraw[3], 0.300000, 0.800000);
- TextDrawColor(Textdraw[3], -128);
- TextDrawSetOutline(Textdraw[3], 0);
- TextDrawSetProportional(Textdraw[3], 1);
- TextDrawSetShadow(Textdraw[3], 0);
- TextDrawSetSelectable(Textdraw[3], 0);
- Textdraw[4] = TextDrawCreate(18.000000, 181.000000, "mood system naturally gaming");
- TextDrawBackgroundColor(Textdraw[4], 255);
- TextDrawFont(Textdraw[4], 2);
- TextDrawLetterSize(Textdraw[4], 0.129999, 0.500000);
- TextDrawColor(Textdraw[4], -128);
- TextDrawSetOutline(Textdraw[4], 0);
- TextDrawSetProportional(Textdraw[4], 1);
- TextDrawSetShadow(Textdraw[4], 0);
- TextDrawSetSelectable(Textdraw[4], 0);
- Textdraw[5] = TextDrawCreate(22.000000, 155.000000, "buang air besar");
- TextDrawBackgroundColor(Textdraw[5], 255);
- TextDrawFont(Textdraw[5], 2);
- TextDrawLetterSize(Textdraw[5], 0.300000, 0.800000);
- TextDrawColor(Textdraw[5], -128);
- TextDrawSetOutline(Textdraw[5], 0);
- TextDrawSetProportional(Textdraw[5], 1);
- TextDrawSetShadow(Textdraw[5], 0);
- TextDrawSetSelectable(Textdraw[5], 0);
- return 1;
- }
- public OnFilterScriptExit()
- {
- for(new i = 0; i < 6; i++)
- {
- TextDrawHideForAll(Textdraw[i]);
- TextDrawDestroy(Textdraw[i]);
- }
- foreach(Player, i)
- {
- SaveMood(i);
- }
- return 1;
- }
- public BarHunger()
- {
- for(new playerid; playerid < MAX_PLAYERS; playerid++)
- {
- SetProgressBarValue(Hunger[playerid], GetProgressBarValue(Hunger[playerid])-2);
- }
- return 1;
- }
- public BarBladder()
- {
- for(new playerid; playerid < MAX_PLAYERS; playerid++)
- {
- SetProgressBarValue(Bladder[playerid], GetProgressBarValue(Bladder[playerid])-5);
- }
- return 1;
- }
- public BarEnergy()
- {
- for(new playerid; playerid < MAX_PLAYERS; playerid++)
- {
- SetProgressBarValue(Energy[playerid], GetProgressBarValue(Energy[playerid])-6);
- }
- return 1;
- }
- public BarDefecate()
- {
- for(new playerid; playerid < MAX_PLAYERS; playerid++)
- {
- SetProgressBarValue(Defecate[playerid], GetProgressBarValue(Defecate[playerid])-4);
- }
- return 1;
- }
- public update()
- {
- for(new playerid; playerid < MAX_PLAYERS; playerid++)
- {
- UpdateProgressBar(Hunger[playerid], playerid);
- UpdateProgressBar(Bladder[playerid], playerid);
- UpdateProgressBar(Energy[playerid], playerid);
- UpdateProgressBar(Defecate[playerid], playerid);
- if(PInfo[playerid][piss] == 1 && GetProgressBarValue(Bladder[playerid]) == 100)
- {
- SetPlayerSpecialAction(playerid, 0);
- PInfo[playerid][piss] = 0;
- KillTimer(pisst);
- }
- if(PInfo[playerid][rest] == 1 && GetProgressBarValue(Energy[playerid]) == 100)
- {
- PlayerLoopingAnim[playerid] = 0;
- ClearAnimations(playerid);
- PInfo[playerid][rest] = 0;
- KillTimer(Rest);
- }
- if(PInfo[playerid][poop] == 1 && GetProgressBarValue(Defecate[playerid]) == 100)
- {
- PlayerLoopingAnim[playerid] = 0;
- ClearAnimations(playerid);
- PInfo[playerid][poop] = 0;
- KillTimer(Poop);
- }
- if(PInfo[playerid][rest] == 1)
- {
- LoopingAnim(playerid,"CRACK", "crckdeth2", 1.800001, 1, 0, 0, 1, 600);
- }
- }
- return 1;
- }
- public Pissing()
- {
- for(new playerid; playerid < MAX_PLAYERS; playerid++)
- SetProgressBarValue(Bladder[playerid], GetProgressBarValue(Bladder[playerid])+5);
- return 1;
- }
- public Resting()
- {
- for(new playerid; playerid < MAX_PLAYERS; playerid++)
- SetProgressBarValue(Energy[playerid], GetProgressBarValue(Energy[playerid])+7);
- return 1;
- }
- public Pooping()
- {
- for(new playerid; playerid < MAX_PLAYERS; playerid++)
- SetProgressBarValue(Defecate[playerid], GetProgressBarValue(Defecate[playerid])+8);
- return 1;
- }
- public OnPlayerConnect(playerid)
- {
- return 1;
- }
- public OnPlayerDisconnect(playerid, reason)
- {
- SaveMood(playerid);
- return 1;
- }
- public OnPlayerSpawn(playerid)
- {
- new file[256],n[MAX_PLAYER_NAME];
- GetPlayerName(playerid,n,MAX_PLAYER_NAME);
- format(file,sizeof(file),"PMood/%s.txt",n);
- if(!dini_Exists(file))
- {
- CreateMood(playerid);
- return 1;
- }
- LoadMood(playerid);
- for(new i = 0; i < 6; i++)
- {
- TextDrawShowForPlayer(playerid, Textdraw[i]);
- }
- Hunger[playerid] = CreateProgressBar(31.00, 102.00, 92.50, 6.19, COLOR_GREEN, 100.0);
- Bladder[playerid] = CreateProgressBar(31.00, 123.00, 93.50, 6.19, COLOR_GREEN, 100.0);
- Energy[playerid] = CreateProgressBar(31.00, 143.00, 92.50, 6.19, COLOR_GREEN, 100.0);
- Defecate[playerid] = CreateProgressBar(31.00, 164.00, 93.50, 6.19, COLOR_GREEN, 100.0);
- ShowProgressBarForPlayer(playerid, Hunger[playerid]);
- ShowProgressBarForPlayer(playerid, Bladder[playerid]);
- ShowProgressBarForPlayer(playerid, Energy[playerid]);
- ShowProgressBarForPlayer(playerid, Defecate[playerid]);
- SetProgressBarValue(Hunger[playerid], dini_Int(file,"Hunger"));
- SetProgressBarValue(Bladder[playerid], dini_Int(file,"Bladder"));
- SetProgressBarValue(Energy[playerid], dini_Int(file,"Energy"));
- SetProgressBarValue(Defecate[playerid], dini_Int(file,"Defecate"));
- PInfo[playerid][piss] = 0;
- PInfo[playerid][poop] = 0;
- return 1;
- }
- public OnPlayerDeath(playerid, killerid, reason)
- {
- PInfo[playerid][piss] = 0;
- PInfo[playerid][poop] = 0;
- SetProgressBarValue(Hunger[playerid], 50);
- SetProgressBarValue(Bladder[playerid], 50);
- SetProgressBarValue(Energy[playerid], 50);
- SetProgressBarValue(Defecate[playerid], 50);
- return 1;
- }
- strtok(const string[], &index)
- {
- new length = strlen(string);
- while ((index < length) && (string[index] <= ' '))
- {
- index++;
- }
- new offset = index;
- new result[20];
- while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
- {
- result[index - offset] = string[index];
- index++;
- }
- result[index - offset] = EOS;
- return result;
- }
- CMD:moodhelp(playerid,params[])
- {
- SendClientMessage(playerid, -1, "---------Perintah untuk Mood---------");
- SendClientMessage(playerid, -1, "Rasa lapar: /eat");
- SendClientMessage(playerid, -1, "Buang air kecil: /pissing");
- SendClientMessage(playerid, -1, "Tenaga: /rest");
- SendClientMessage(playerid, -1, "Buang air besar: /poop");
- return 1;
- }
- CMD:pissing(playerid,params[])
- {
- PInfo[playerid][piss] = 1;
- SetPlayerSpecialAction(playerid, 68);
- pisst = SetTimer("Pissing",1000,1);
- return 1;
- }
- CMD:poop(playerid,params[])
- {
- PInfo[playerid][poop] = 1;
- Poop = SetTimer("Pooping",1000,1);
- LoopingAnim(playerid,"MISC","SEAT_LR",4.0,1,0,0,0,0);
- return 1;
- }
- CMD:rest(playerid,params[])
- {
- Rest = SetTimer("Resting",5000,1);
- PInfo[playerid][rest] = 1;
- LoopingAnim(playerid,"CRACK", "crckdeth2", 1.800001, 1, 0, 0, 1, 0);
- return 1;
- }
- CMD:eat(playerid,params[])
- {
- if(isnull(params))
- {
- SendClientMessage(playerid, 0xB4B5B7FF, "Usage: /eat [food (1-3)]");
- SendClientMessage(playerid, 0xB4B5B7FF, "1|Burger 2|Pizza 3|Chicken");
- return 1;
- }
- if(strcmp(params,"1",true) == 0)
- {
- if(IsPlayerInRangeOfPoint(playerid, 20, 366.0248, -73.3478, 1001.5078))
- {
- GivePlayerMoney(playerid, -250);
- SetProgressBarValue(Hunger[playerid], GetProgressBarValue(Hunger[playerid])+10);
- SendClientMessage(playerid, 0xFFFF00AA, "Thanks For Buying Burger");
- return 1;
- }
- else return SendClientMessage(playerid, 0xCBCCCEFF, "You Must In Burger Shot For Eat Burger");
- }
- if(strcmp(params,"2",true) == 0)
- {
- if(IsPlayerInRangeOfPoint(playerid, 50, 372.3520, -131.6510, 1001.4922))
- {
- GivePlayerMoney(playerid, -350);
- SetProgressBarValue(Hunger[playerid], GetProgressBarValue(Hunger[playerid])+15);
- SendClientMessage(playerid, 0xFFFF00AA, "Thanks For Buying Pizza");
- return 1;
- }
- else return SendClientMessage(playerid, 0xCBCCCEFF, "You Must In Well Stacked Pizza For Eat Pizza");
- }
- if(strcmp(params,"3",true) == 0)
- {
- if(IsPlayerInRangeOfPoint(playerid, 50, 365.7158, -9.8873, 1001.8516))
- {
- GivePlayerMoney(playerid, -100);
- SetProgressBarValue(Hunger[playerid], GetProgressBarValue(Hunger[playerid])+5);
- SendClientMessage(playerid, 0xFFFF00AA, "Thanks For Buying Chicken");
- return 1;
- }
- else return SendClientMessage(playerid, 0xCBCCCEFF, "You Must In Cluckin Bell For Eat Chicken");
- }
- return 1;
- }
- CMD:setmaxmood(playerid,params[])
- {
- new tmp [256];
- new tmp2[256];
- new Index;
- new player1;
- new mood;
- tmp = strtok(params,Index);
- tmp2 = strtok(params,Index);
- if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, -1, "SERVER: You must be an admin to use this command");
- if(isnull(params))
- {
- SendClientMessage(playerid, 0x33CCFFAA, "Usage: /setmood [playerid] [Mood(1-5)]");
- SendClientMessage(playerid, -1, "SERVER: Pilih Mood 1 (hunger), 2 (bladder), 3 (energy), 4 (defecate) , and 5 (All mood)!");
- return 1;
- }
- player1 = strval(tmp);
- if(isnull(tmp2))
- {
- SendClientMessage(playerid, 0x33CCFFAA, "Usage: /setmood [playerid] [Mood(1-5)]");
- SendClientMessage(playerid, -1, "SERVER: Pilih Mood 1 (hunger), 2 (bladder), 3 (energy), 4 (defecate) , and 5 (All mood)!");
- return 1;
- }
- mood = strval(tmp2);
- if(player1 != INVALID_PLAYER_ID)
- {
- if(mood > 5 || mood < 1) return SendClientMessage(playerid, -1, "SERVER: Pilih Mood 1 (hunger), 2 (bladder), 3 (energy), 4 (defecate) , and 5 (All mood)!");
- if(mood == 1)
- {
- SetProgressBarValue(Hunger[player1], 100);
- SendClientMessage(player1, -1, "SERVER: Hunger kamu sekarang telah di set maximal oleh admin!");
- }
- if(mood == 2)
- {
- SetProgressBarValue(Bladder[player1], 100);
- SendClientMessage(player1, -1, "SERVER: Bladder kamu sekarang telah di set maximal oleh admin!");
- }
- if(mood == 3)
- {
- SetProgressBarValue(Energy[player1], 100);
- SendClientMessage(player1, -1, "SERVER: Energy kamu sekarang telah di set maximal oleh admin!");
- }
- if(mood == 4)
- {
- SetProgressBarValue(Defecate[player1], 100);
- SendClientMessage(player1, -1, "SERVER: Defecate kamu sekarang telah di set maximal oleh admin!");
- }
- if(mood == 5)
- {
- SetProgressBarValue(Hunger[player1], 100);
- SetProgressBarValue(Bladder[player1], 100);
- SetProgressBarValue(Energy[player1], 100);
- SetProgressBarValue(Defecate[player1], 100);
- SendClientMessage(player1, -1, "SERVER: Mood kamu telah di set maximal oleh admin");
- }
- }
- else
- {
- SendClientMessage(playerid, -1, "SERVER: Pemain tidak ada!");
- }
- return 1;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement