Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <a_samp>
- #include <zcmd>
- #include <sscanf2>
- // Colors
- #define COLOR_GREY 0xAFAFAFAA
- #define COLOR_GREEN 0x33AA33AA
- #define COLOR_RED 0xAA3333AA
- #define COLOR_YELLOW 0xFFFF00AA
- #define COLOR_POWDERBLUE 0xB0E0E6FF
- #define COLOR_WHITE 0xFFFFFFAA
- #define COLOR_BLUE 0x1515FF96
- #define COLOR_NBLUE 0x0080C096
- #define COLOR_LIGHTBLUE 0x33CCFFAA
- #define COLOR_ORANGE 0xFF9900AA
- #define COLOR_GOLD 0xFFD700FF
- #define COLOR_LIGHTGREEN 0x90EE90FF
- #define COLOR_OLIVE 0x808000FF
- #define COLOR_SALMON 0xFA8072FF
- #define COLOR_ELGGREEN 0x00F20096
- #define COLOR_ORED 0xFF0000FF
- #define COLOR_MAGENTA 0xFF00FFFF
- #define COLOR_TEAL 0x008080FF
- #define COLOR_SWAT 0x5650D896
- #define COLOR_CYAN 0x7DFFFF96
- #define COLOR_BROWN 0xFFBB7796
- #define COLOR_DARKBROWN 0x40000096
- #define COLOR_BLACK 0x2D2D2D96
- #define COLOR_PINK 0xFF80FF96
- main()
- {
- print("\n----------------------------------");
- print(" Check-in system by Stev ")
- print("----------------------------------\n");
- }
- new CheckEachTimer, PlayerSeconds[MAX_PLAYERS];
- public OnGameModeInit()
- {
- SetGameModeText("Blank Script");
- AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
- // Creating the timer
- CheckEachTimer = SetTimer("CheckEachPlayer",1000, true);
- return 1;
- }
- public OnGameModeExit()
- {
- // Killing the timer
- KillTimer(CheckEachTimer);
- return 1;
- }
- public OnPlayerRequestClass(playerid, classid)
- {
- SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);
- SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746);
- SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746);
- return 1;
- }
- public OnPlayerConnect(playerid)
- {
- SendClientMessage(playerid, COLOR_YELLOW, "This server is using the Check-in system by Stev");
- return 1;
- }
- public OnPlayerDisconnect(playerid, reason)
- {
- return 1;
- }
- public OnPlayerSpawn(playerid)
- {
- return 1;
- }
- public OnPlayerDeath(playerid, killerid, reason)
- {
- return 1;
- }
- public OnVehicleSpawn(vehicleid)
- {
- return 1;
- }
- public OnVehicleDeath(vehicleid, killerid)
- {
- return 1;
- }
- public OnPlayerText(playerid, text[])
- {
- return 1;
- }
- public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
- {
- return 1;
- }
- public OnPlayerExitVehicle(playerid, vehicleid)
- {
- return 1;
- }
- public OnPlayerStateChange(playerid, newstate, oldstate)
- {
- return 1;
- }
- public OnPlayerEnterCheckpoint(playerid)
- {
- return 1;
- }
- public OnPlayerLeaveCheckpoint(playerid)
- {
- return 1;
- }
- public OnPlayerEnterRaceCheckpoint(playerid)
- {
- return 1;
- }
- public OnPlayerLeaveRaceCheckpoint(playerid)
- {
- return 1;
- }
- public OnRconCommand(cmd[])
- {
- return 1;
- }
- public OnPlayerRequestSpawn(playerid)
- {
- return 1;
- }
- public OnObjectMoved(objectid)
- {
- return 1;
- }
- public OnPlayerObjectMoved(playerid, objectid)
- {
- return 1;
- }
- public OnPlayerPickUpPickup(playerid, pickupid)
- {
- return 1;
- }
- public OnVehicleMod(playerid, vehicleid, componentid)
- {
- return 1;
- }
- public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
- {
- return 1;
- }
- public OnVehicleRespray(playerid, vehicleid, color1, color2)
- {
- return 1;
- }
- public OnPlayerSelectedMenuRow(playerid, row)
- {
- return 1;
- }
- public OnPlayerExitedMenu(playerid)
- {
- return 1;
- }
- public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
- {
- return 1;
- }
- public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
- {
- return 1;
- }
- public OnRconLoginAttempt(ip[], password[], success)
- {
- return 1;
- }
- public OnPlayerUpdate(playerid)
- {
- return 1;
- }
- public OnPlayerStreamIn(playerid, forplayerid)
- {
- return 1;
- }
- public OnPlayerStreamOut(playerid, forplayerid)
- {
- return 1;
- }
- public OnVehicleStreamIn(vehicleid, forplayerid)
- {
- return 1;
- }
- public OnVehicleStreamOut(vehicleid, forplayerid)
- {
- return 1;
- }
- public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
- {
- return 1;
- }
- public OnPlayerClickPlayer(playerid, clickedplayerid, source)
- {
- return 1;
- }
- stock PlayerName(playerid)
- {
- new name[24];
- GetPlayerName(playerid, name, 24);
- return name;
- }
- stock LogPlayer(string[])
- {
- new File:ini = fopen("Logs/Check-in.txt", io_append);
- new log[256],year,month,day,hour,minute,second;
- getdate(year, month, day);
- gettime(hour, minute, second);
- format(log, sizeof(log),"[%02d/%02d/%02d,%02d.%02d.%02d] %s: %s \r\n",day,month,year,hour,minute,second, string);
- fwrite(ini, log);
- fclose(ini);
- return 1;
- }
- CMD:checkin(playerid)
- {
- //if(IsPlayerAdmin(playerid)) return 0;
- if(PlayerData[playerid][Admin] < 1) return 0;
- new string[100], log[128],h,m,s;
- gettime(h, m, s);
- if(GetPVarInt(playerid, "Check-in") == 1)
- {
- SendClientMessage(playerid, COLOR_ORED, "Error: You are already checked in");
- return 1;
- }
- else if(GetPVarInt(playerid, "Check-in") == 0)
- {
- format(string, sizeof(string),"You are now checked-in");
- SendClientMessage(playerid, COLOR_YELLOW, string);
- SetPVarInt(playerid, "Check-in", 1);
- format(log, sizeof(log),"%s has checked in (%02d:%02d:%02d)",PlayerName(playerid),h,m,s);
- LogPlayer(log);
- // Start the clock
- PlayerSeconds[playerid] = 0;
- }
- return 1;
- }
- CMD:checkout(playerid, params[])
- {
- //if(IsPlayerAdmin(playerid)) return 0;
- if(PlayerData[playerid][Admin] < 1) return 0;
- new log[200], reason[50];
- if(sscanf(params, "s[50]", reason)) return SendClientMessage(playerid, COLOR_WHITE, "Usage: /checkout [reason]");
- if(GetPVarInt(playerid, "Check-in") == 0)
- {
- SendClientMessage(playerid, COLOR_ORED, "Error: You're not checked in to do this");
- return 1;
- }
- else if(GetPVarInt(playerid, "Check-in") == 1)
- {
- new string[100];
- format(string, sizeof(string),"You are successfully checked out with reason (%s)",reason);
- SendClientMessage(playerid, COLOR_YELLOW, string);
- // Stop clock and print
- new hh,mm,ss;
- GetPlayerOnlineTime(playerid, hh, mm, ss);
- format(log, sizeof(log),"%s has checkout after (%02d hrs, %02d minutes, %02d secs)",PlayerName(playerid),hh,mm,ss);
- LogPlayer(log);
- SetPVarInt(playerid, "Check-in", 0);
- }
- return 1;
- }
- forward CheckEachPlayer();
- public CheckEachPlayer()
- {
- for(new i=0;i<MAX_PLAYERS;i++)
- {
- if(IsPlayerConnected(i))
- {
- PlayerSeconds[i]++;
- }
- }
- }
- stock GetPlayerOnlineTime(playerid, &hours, &minutes, &seconds)
- {
- hours = (PlayerSeconds[playerid]/(60*60))%24;
- minutes = (PlayerSeconds[playerid]/60)%60;
- seconds = PlayerSeconds[playerid]%60;
- }
Advertisement
Add Comment
Please, Sign In to add comment