| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- #include <YSI_Coding\y_hooks>
- forward OnPlayerFirstSpawn(playerid);
- static bool:PlayerFirstSpawn[MAX_PLAYERS];
- hook OnPlayerConnect(playerid)
- {
- PlayerFirstSpawn[playerid] = true;
- }
- hook OnPlayerRequestClass(playerid, classid)
- {
- new Float:x, Float:y, Float:z, Float:a;
- Character_GetLastPos(playerid, x, y, z, a);
- SetSpawnInfo(playerid, DEFAULT_TEAM, Player_GetSkin(playerid), x, y, z, a, 0, 0, 0, 0, 0, 0);
- SpawnPlayer(playerid);
- }
- hook OnPlayerSpawn(playerid)
- {
- SetPlayerHealth(playerid, 100.0);
- printf("%s triggered OnPlayerSpawn.", ReturnPlayerRPName(playerid));
- if(PlayerFirstSpawn[playerid])
- {
- CallRemoteFunction("OnPlayerFirstSpawn", "i", playerid);
- }
- else if(!IsPlayerWounded(playerid))
- {
- SetPlayerPos(playerid, DEFAULT_POSX, DEFAULT_POSY, DEFAULT_POSZ);
- SetPlayerFacingAngle(playerid, DEFAULT_POSA);
- SetPlayerInterior(playerid, DEFAULT_INT);
- SetPlayerVirtualWorld(playerid, DEFAULT_VW);
- }
- else CallRemoteFunction("OnPlayerSpawnToHospital", "i", playerid);
- SetCameraBehindPlayer(playerid);
- }
- public OnPlayerFirstSpawn(playerid)
- {
- PlayerFirstSpawn[playerid] = false;
- SetPlayerSkillLevel(playerid, WEAPONSKILL_PISTOL, 1);
- SetPlayerSkillLevel(playerid, WEAPONSKILL_MICRO_UZI, 1);
- ClearChat(playerid);
- SendInfoMessageF(playerid, "Welcome back to %s.", SERVER_NAME);
- SendInfoMessage(playerid, "Be sure to stay up to date on the {02a4c4}Server Rules {FFFFFF}to avoid any issues!");
- SendInfoMessageF(playerid, "Visit our website at {ff8c00}%s{ffffff} for all information regarding the community.", SERVER_WEBSITE);
- }
- stock bool:IsPlayerSpawned(playerid)
- {
- if(PlayerFirstSpawn[playerid])
- {
- return false;
- }
- return true;
- }
|