All pastes #1334083 Raw Edit

clock

public text v1 · immutable
#1334083 ·published 2009-02-11 14:38 UTC
rendered paste body
/*=========================*\
|| -----Simple clock by----||
|| --------Orpheus---------||
\*=========================*/

#include "a_samp"

#define COLOUR_WHITE 0xFFFFFFAA
#define COLOUR_RED 0xFF6A6AFF

//== For DCMD Commands
#define dcmd(%1,%2,%3) if ((strcmp((%3)[1], #%1, true, (%2)) == 0) && ((((%3)[(%2) + 1] == 0) && (dcmd_%1(playerid, "")))||(((%3)[(%2) + 1] == 32) && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1
// Caps
#define UpperToLower(%1) for ( new ToLowerChar; ToLowerChar < strlen( %1 ); ToLowerChar ++ ) if ( %1[ ToLowerChar ]> 64 && %1[ ToLowerChar ] < 91 ) %1[ ToLowerChar ] += 32

enum ServerData
{
	gamedayno,
	gamedayname[30],
	gamehour,
	gamemin,
};
new ServerInfo[ServerData];

new daytext[20];
new string[256];
new string2[256];

new Text:Textdraw1[MAX_PLAYERS];
new Text:Textdraw2[MAX_PLAYERS];

forward DayofWeek(playerid);
forward Clock(playerid);
forward ClockTimeingUpdateProcedure();
forward ServerAdverts();
forward CreateTextEx(playerid);
forward DayandTimeupdate(playerid);
forward testclockreset(playerid);

public OnFilterScriptInit()
{
	ServerInfo[gamedayno] = 1;
	//ServerInfo[gamedayname]
	ServerInfo[gamehour] = 0;
	ServerInfo[gamemin] = 0;
	SetWorldTime(ServerInfo[gamehour]);

   	SetTimer("ClockTimeingUpdateProcedure()", 1000, 1);
   	SetTimer("DayofWeek(playerid)", 1000, 1);
   	SetTimer("Clock(playerid)", 1000, 1);
   	SetTimer("ServerAdverts()", 1000, 1);
   	SetTimer("testclockreset(playerid)", 1000, 1);
	return 1;
}
public OnPlayerConnect(playerid)
{
	TextDrawHideForPlayer(playerid, Textdraw1[playerid]);
	TextDrawHideForPlayer(playerid, Textdraw2[playerid]);
	return 1;
}

public OnPlayerSpawn(playerid)
{
	CreateTextEx(playerid);
	TextDrawShowForPlayer(playerid, Textdraw1[playerid]);
	TextDrawShowForPlayer(playerid, Textdraw2[playerid]);
	return 1;
}

public DayofWeek(playerid)
{
if(ServerInfo[gamedayno] == 1)
{
	daytext = "Sunday";
	format(string2, sizeof(string2), "%s",daytext);
	TextDrawSetString(Textdraw1[playerid], string);
	return 1;
	}
else if(ServerInfo[gamedayno] ==  2)
{
	daytext = "Monday";
	format(string2, sizeof(string2), "%s",daytext);
	TextDrawSetString(Textdraw1[playerid], string);
	return 1;
	}
else if(ServerInfo[gamedayno] ==  3)
{
	daytext = "Tuesday";
	format(string2, sizeof(string2), "%s",daytext);
	TextDrawSetString(Textdraw1[playerid], string);
	return 1;
	}
else if(ServerInfo[gamedayno] ==  4)
{
	daytext = "Wednesday";
	format(string2, sizeof(string2), "%s",daytext);
	TextDrawSetString(Textdraw1[playerid], string);
	return 1;
	}
else if(ServerInfo[gamedayno] ==  5)
{
	daytext = "Thursday";
	format(string2, sizeof(string2), "%s",daytext);
	TextDrawSetString(Textdraw1[playerid], string);
	return 1;
	}
else if(ServerInfo[gamedayno] ==  6)
{
	daytext = "Friday";
	format(string2, sizeof(string2), "%s",daytext);
	TextDrawSetString(Textdraw1[playerid], string);
	return 1;
	}
else if(ServerInfo[gamedayno] ==  7)
{
	daytext = "Saturday";
	format(string2, sizeof(string2), "%s",daytext);
	TextDrawSetString(Textdraw1[playerid], string);
	return 1;
	}
return 1;
}

public ClockTimeingUpdateProcedure()
{
if(ServerInfo[gamedayno] == 1 && ServerInfo[gamehour] == 0 && ServerInfo[gamemin] == 0)
{
	ServerInfo[gamemin] = ServerInfo[gamemin] +1;
	return 1;
	}
if(ServerInfo[gamedayno] == 1 && ServerInfo[gamehour] == 0 && ServerInfo[gamemin] == 59)
{
	ServerInfo[gamehour] = ServerInfo[gamehour] +1;
	ServerInfo[gamemin] = 0;
	return 1;
	}
if(ServerInfo[gamedayno] == 1 && ServerInfo[gamehour] == 7 && ServerInfo[gamemin] == 0)
{
	ServerInfo[gamemin] = ServerInfo[gamemin] +1;
	return 1;
	}
if(ServerInfo[gamedayno] == 1 && ServerInfo[gamehour] == 7 && ServerInfo[gamemin] == 59)
{
    ServerInfo[gamedayno] = ServerInfo[gamedayno] +1;
	ServerInfo[gamehour] = 0;
	ServerInfo[gamemin] = 0;
	return 1;
	}
if(ServerInfo[gamedayno] == 7 && ServerInfo[gamehour] == 0 && ServerInfo[gamemin] == 0)
{
	ServerInfo[gamemin] = ServerInfo[gamemin] +1;
	return 1;
	}
if(ServerInfo[gamedayno] == 7 && ServerInfo[gamehour] == 0 && ServerInfo[gamemin] == 59)
{
	ServerInfo[gamehour] = ServerInfo[gamehour] +1;
	ServerInfo[gamemin] = 0;
	return 1;
	}
if(ServerInfo[gamedayno] == 7 && ServerInfo[gamehour] == 59 && ServerInfo[gamemin] == 0)
{
	ServerInfo[gamemin] = ServerInfo[gamemin] +1;
	return 1;
	}
if(ServerInfo[gamedayno] == 7 && ServerInfo[gamehour] == 59 && ServerInfo[gamemin] == 59)
{
    ServerInfo[gamedayno] = 0;
	ServerInfo[gamehour] = 0;
	ServerInfo[gamemin] = 0;
	return 1;
	}
return 1;
}


public Clock(playerid)
{
if(ServerInfo[gamehour] < 10 && ServerInfo[gamemin] < 10)
{
	format(string2, sizeof(string2), "0%d:0%d", ServerInfo[gamehour], ServerInfo[gamemin]);
	TextDrawSetString(Text:Textdraw2[playerid], string2);
	return 1;
	}
if(ServerInfo[gamehour] > 9 && ServerInfo[gamemin] < 10)
{
	format(string2, sizeof(string2), "%d:0%d", ServerInfo[gamehour], ServerInfo[gamemin]);
	TextDrawSetString(Text:Textdraw2[playerid], string2);
	return 1;
	}
else if(ServerInfo[gamehour] < 10 && ServerInfo[gamemin] >9)
{
	format(string2, sizeof(string2), "0%d:%d", ServerInfo[gamehour], ServerInfo[gamemin]);
	TextDrawSetString(Text:Textdraw2[playerid], string2);
	return 1;
	}
else if(ServerInfo[gamehour] >9 && ServerInfo[gamemin] >9)
{
	format(string2, sizeof(string2), "%d:%d", ServerInfo[gamehour], ServerInfo[gamemin]);
	TextDrawSetString(Text:Textdraw2[playerid], string2);
	return 1;
	}
return 1;
}

public OnPlayerText(playerid, text[])
{
	return 1;
}


public ServerAdverts()
{
if(ServerInfo[gamedayno] == 1 && ServerInfo[gamehour] == 0 && ServerInfo[gamemin] == 0)
{
	format(string, sizeof(string), "0%d:0%d", ServerInfo[gamehour], ServerInfo[gamemin]);
	SendClientMessageToAll(COLOUR_WHITE, string);
	format(string, sizeof(string), "Place Some Server Information here");
	SendClientMessageToAll(COLOUR_WHITE, string);
	return 1;
	}
if(ServerInfo[gamedayno] == 2 && ServerInfo[gamehour] == 0 && ServerInfo[gamemin] == 0)
{
	format(string, sizeof(string), "0%d:0%d", ServerInfo[gamehour], ServerInfo[gamemin]);
	SendClientMessageToAll(COLOUR_WHITE, string);
	format(string, sizeof(string), "Place Some Server Information here");
	SendClientMessageToAll(COLOUR_WHITE, string);
	return 1;
	}
if(ServerInfo[gamedayno] == 3 && ServerInfo[gamehour] == 0 && ServerInfo[gamemin] == 0)
{
	format(string, sizeof(string), "0%d:0%d", ServerInfo[gamehour], ServerInfo[gamemin]);
	SendClientMessageToAll(COLOUR_WHITE, string);
	format(string, sizeof(string), "Place Some Server Information here");
	SendClientMessageToAll(COLOUR_WHITE, string);
	return 1;
	}
if(ServerInfo[gamedayno] == 4 && ServerInfo[gamehour] == 0 && ServerInfo[gamemin] == 0)
{
	format(string, sizeof(string), "0%d:0%d", ServerInfo[gamehour], ServerInfo[gamemin]);
	SendClientMessageToAll(COLOUR_WHITE, string);
	format(string, sizeof(string), "Place Some Server Information here");
	SendClientMessageToAll(COLOUR_WHITE, string);
	return 1;
	}
if(ServerInfo[gamedayno] == 5 && ServerInfo[gamehour] == 0 && ServerInfo[gamemin] == 0)
{
	format(string, sizeof(string), "0%d:0%d", ServerInfo[gamehour], ServerInfo[gamemin]);
	SendClientMessageToAll(COLOUR_WHITE, string);
	format(string, sizeof(string), "Place Some Server Information here");
	SendClientMessageToAll(COLOUR_WHITE, string);
	return 1;
	}
if(ServerInfo[gamedayno] == 6 && ServerInfo[gamehour] == 0 && ServerInfo[gamemin] == 0)
{
	format(string, sizeof(string), "0%d:0%d", ServerInfo[gamehour], ServerInfo[gamemin]);
	SendClientMessageToAll(COLOUR_WHITE, string);
	format(string, sizeof(string), "Place Some Server Information here");
	SendClientMessageToAll(COLOUR_WHITE, string);
	return 1;
	}
if(ServerInfo[gamedayno] == 7 && ServerInfo[gamehour] == 0 && ServerInfo[gamemin] == 0)
{
	format(string, sizeof(string), "0%d:0%d", ServerInfo[gamehour], ServerInfo[gamemin]);
	SendClientMessageToAll(COLOUR_WHITE, string);
	format(string, sizeof(string), "Place Some Server Information here");
	SendClientMessageToAll(COLOUR_WHITE, string);
	return 1;
	}
if(ServerInfo[gamedayno] == 8 && ServerInfo[gamehour] == 0 && ServerInfo[gamemin] == 0)
{
	format(string, sizeof(string), "0%d:0%d", ServerInfo[gamehour], ServerInfo[gamemin]);
	SendClientMessageToAll(COLOUR_WHITE, string);
	format(string, sizeof(string), "Place Some Server Information here");
	SendClientMessageToAll(COLOUR_WHITE, string);
	return 1;
	}
if(ServerInfo[gamedayno] == 9 && ServerInfo[gamehour] == 0 && ServerInfo[gamemin] == 0)
{
	format(string, sizeof(string), "0%d:0%d", ServerInfo[gamehour], ServerInfo[gamemin]);
	SendClientMessageToAll(COLOUR_WHITE, string);
	format(string, sizeof(string), "Place Some Server Information here");
	SendClientMessageToAll(COLOUR_WHITE, string);
	return 1;
	}
if(ServerInfo[gamedayno] == 10 && ServerInfo[gamehour] == 0 && ServerInfo[gamemin] == 0)
{
	format(string, sizeof(string), "%d:0%d", ServerInfo[gamehour], ServerInfo[gamemin]);
	SendClientMessageToAll(COLOUR_WHITE, string);
	format(string, sizeof(string), "Place Some Server Information here");
	SendClientMessageToAll(COLOUR_WHITE, string);
	return 1;
	}
if(ServerInfo[gamedayno] == 11 && ServerInfo[gamehour] == 0 && ServerInfo[gamemin] == 0)
{
	format(string, sizeof(string), "%d:0%d", ServerInfo[gamehour], ServerInfo[gamemin]);
	SendClientMessageToAll(COLOUR_WHITE, string);
	format(string, sizeof(string), "Place Some Server Information here");
	SendClientMessageToAll(COLOUR_WHITE, string);
	return 1;
	}
if(ServerInfo[gamedayno] == 12 && ServerInfo[gamehour] == 0 && ServerInfo[gamemin] == 0)
{
	format(string, sizeof(string), "%d:0%d", ServerInfo[gamehour], ServerInfo[gamemin]);
	SendClientMessageToAll(COLOUR_WHITE, string);
	format(string, sizeof(string), "Place Some Server Information here");
	SendClientMessageToAll(COLOUR_WHITE, string);
	return 1;
	}
if(ServerInfo[gamedayno] == 13 && ServerInfo[gamehour] == 0 && ServerInfo[gamemin] == 0)
{
	format(string, sizeof(string), "%d:0%d", ServerInfo[gamehour], ServerInfo[gamemin]);
	SendClientMessageToAll(COLOUR_WHITE, string);
	format(string, sizeof(string), "Place Some Server Information here");
	SendClientMessageToAll(COLOUR_WHITE, string);
	return 1;
	}
if(ServerInfo[gamedayno] == 14 && ServerInfo[gamehour] == 0 && ServerInfo[gamemin] == 0)
{
	format(string, sizeof(string), "%d:0%d", ServerInfo[gamehour], ServerInfo[gamemin]);
	SendClientMessageToAll(COLOUR_WHITE, string);
	format(string, sizeof(string), "Place Some Server Information here");
	SendClientMessageToAll(COLOUR_WHITE, string);
	return 1;
	}
if(ServerInfo[gamedayno] == 15 && ServerInfo[gamehour] == 0 && ServerInfo[gamemin] == 0)
{
	format(string, sizeof(string), "%d:0%d", ServerInfo[gamehour], ServerInfo[gamemin]);
	SendClientMessageToAll(COLOUR_WHITE, string);
	format(string, sizeof(string), "Place Some Server Information here");
	SendClientMessageToAll(COLOUR_WHITE, string);
	return 1;
	}
if(ServerInfo[gamedayno] == 16 && ServerInfo[gamehour] == 0 && ServerInfo[gamemin] == 0)
{
	format(string, sizeof(string), "%d:0%d", ServerInfo[gamehour], ServerInfo[gamemin]);
	SendClientMessageToAll(COLOUR_WHITE, string);
	format(string, sizeof(string), "Place Some Server Information here");
	SendClientMessageToAll(COLOUR_WHITE, string);
	return 1;
	}
if(ServerInfo[gamedayno] == 17 && ServerInfo[gamehour] == 0 && ServerInfo[gamemin] == 0)
{
	format(string, sizeof(string), "%d:0%d", ServerInfo[gamehour], ServerInfo[gamemin]);
	SendClientMessageToAll(COLOUR_WHITE, string);
	format(string, sizeof(string), "Place Some Server Information here");
	SendClientMessageToAll(COLOUR_WHITE, string);
	return 1;
}
if(ServerInfo[gamedayno] == 18 && ServerInfo[gamehour] == 0 && ServerInfo[gamemin] == 0)
{
	format(string, sizeof(string), "%d:0%d", ServerInfo[gamehour], ServerInfo[gamemin]);
	SendClientMessageToAll(COLOUR_WHITE, string);
	format(string, sizeof(string), "Place Some Server Information here");
	SendClientMessageToAll(COLOUR_WHITE, string);
	return 1;
	}
if(ServerInfo[gamedayno] == 19 && ServerInfo[gamehour] == 0 && ServerInfo[gamemin] == 0)
{
	format(string, sizeof(string), "%d:0%d", ServerInfo[gamehour], ServerInfo[gamemin]);
	SendClientMessageToAll(COLOUR_WHITE, string);
	format(string, sizeof(string), "Place Some Server Information here");
	SendClientMessageToAll(COLOUR_WHITE, string);
	return 1;
	}
if(ServerInfo[gamedayno] == 20 && ServerInfo[gamehour] == 0 && ServerInfo[gamemin] == 0)
{
	format(string, sizeof(string), "%d:0%d", ServerInfo[gamehour], ServerInfo[gamemin]);
	SendClientMessageToAll(COLOUR_WHITE, string);
	format(string, sizeof(string), "Place Some Server Information here");
	SendClientMessageToAll(COLOUR_WHITE, string);
	return 1;
	}
if(ServerInfo[gamedayno] == 21 && ServerInfo[gamehour] == 0 && ServerInfo[gamemin] == 0)
{
	format(string, sizeof(string), "%d:0%d", ServerInfo[gamehour], ServerInfo[gamemin]);
	SendClientMessageToAll(COLOUR_WHITE, string);
	format(string, sizeof(string), "Place Some Server Information here");
	SendClientMessageToAll(COLOUR_WHITE, string);
	return 1;
	}
if(ServerInfo[gamedayno] == 22 && ServerInfo[gamehour] == 0 && ServerInfo[gamemin] == 0)
{
	format(string, sizeof(string), "%d:0%d", ServerInfo[gamehour], ServerInfo[gamemin]);
	SendClientMessageToAll(COLOUR_WHITE, string);
	format(string, sizeof(string), "Place Some Server Information here");
	SendClientMessageToAll(COLOUR_WHITE, string);
	return 1;
	}
if(ServerInfo[gamedayno] == 23 && ServerInfo[gamehour] == 0 && ServerInfo[gamemin] == 0)
{
	format(string, sizeof(string), "%d:0%d", ServerInfo[gamehour], ServerInfo[gamemin]);
	SendClientMessageToAll(COLOUR_WHITE, string);
	format(string, sizeof(string), "Place Some Server Information here");
	SendClientMessageToAll(COLOUR_WHITE, string);
	return 1;
	}
return 1;
}

public OnPlayerCommandText(playerid, cmdtext[])
{
dcmd(ttime,5,cmdtext);
dcmd(ttime2,6,cmdtext);
return 0;
}

dcmd_ttime(playerid,params[])
{
#pragma unused playerid
#pragma unused params
if(ServerInfo[gamehour] < 10 && ServerInfo[gamemin] < 10)
{
	format(string, sizeof(string), "0%d:0%d", ServerInfo[gamehour], ServerInfo[gamemin]);
	SendClientMessage(playerid, COLOUR_WHITE, string);
	return 1;
	}
if(ServerInfo[gamehour] > 9 && ServerInfo[gamemin] < 10)
{
	format(string, sizeof(string), "%d:0%d", ServerInfo[gamehour], ServerInfo[gamemin]);
	SendClientMessage(playerid, COLOUR_WHITE, string);
	return 1;
	}
else if(ServerInfo[gamehour] < 10 && ServerInfo[gamemin] >9)
{
	format(string, sizeof(string), "0%d:%d", ServerInfo[gamehour], ServerInfo[gamemin]);
	SendClientMessage(playerid, COLOUR_WHITE, string);
	return 1;
	}
else if(ServerInfo[gamehour] >9 && ServerInfo[gamemin] >9)
{
	format(string, sizeof(string), "%d:%d", ServerInfo[gamehour], ServerInfo[gamemin]);
	SendClientMessage(playerid, COLOUR_WHITE, string);
	return 1;
	}
return 1;
}

dcmd_ttime2(playerid,params[])
{
#pragma unused playerid
#pragma unused params
if(ServerInfo[gamehour] < 10 && ServerInfo[gamemin] < 10)
{
	format(string, sizeof(string), "Day = %s Time = 0%d:0%d",daytext,ServerInfo[gamehour],ServerInfo[gamemin]);
	SendClientMessage(playerid, COLOUR_WHITE, string);
	return 1;
	}
if(ServerInfo[gamehour] > 9 && ServerInfo[gamemin] < 10)
{
	format(string, sizeof(string), "Day = %s Time = %d:0%d",daytext,ServerInfo[gamehour],ServerInfo[gamemin]);
	SendClientMessage(playerid, COLOUR_WHITE, string);
	return 1;
	}
else if(ServerInfo[gamehour] < 10 && ServerInfo[gamemin] >9)
{
	format(string, sizeof(string), "Day = %s Time = 0%d:%d",daytext,ServerInfo[gamehour],ServerInfo[gamemin]);
	SendClientMessage(playerid, COLOUR_WHITE, string);
	return 1;
	}
else if(ServerInfo[gamehour] >9 && ServerInfo[gamemin] >9)
{
	format(string, sizeof(string), "Day = %s Time = %d:%d",daytext,ServerInfo[gamehour],ServerInfo[gamemin]);
	SendClientMessage(playerid, COLOUR_WHITE, string);
	return 1;
	}
return 1;
}

public CreateTextEx(playerid)
{
	Textdraw1[playerid] = TextDrawCreate(500.000000,5.000000, "~w~%s");
    Textdraw2[playerid] = TextDrawCreate(551.000000,23.000000,"~w~%d:%d");
    TextDrawAlignment(Textdraw1[playerid],0);
    TextDrawAlignment(Textdraw2[playerid],0);
    TextDrawBackgroundColor(Textdraw1[playerid],0x0000BBAA);
    TextDrawBackgroundColor(Textdraw2[playerid],0x0000BBAA);
    TextDrawFont(Textdraw1[playerid],2);
    TextDrawLetterSize(Textdraw1[playerid],0.499999,1.500000);
    TextDrawFont(Textdraw2[playerid],2);
    TextDrawLetterSize(Textdraw2[playerid],0.399999,2.000000);
    TextDrawColor(Textdraw1[playerid],0xAA3333AA);
    TextDrawColor(Textdraw2[playerid],0xAA3333AA);
    TextDrawSetOutline(Textdraw1[playerid],1);
    TextDrawSetOutline(Textdraw2[playerid],1);
    TextDrawSetProportional(Textdraw1[playerid],1);
    TextDrawSetProportional(Textdraw2[playerid],1);
    TextDrawSetShadow(Textdraw1[playerid],1);
    TextDrawSetShadow(Textdraw2[playerid],1);
	return 1;
}


public testclockreset(playerid)
{
	TextDrawHideForPlayer(playerid, Textdraw1[playerid]);
	TextDrawHideForPlayer(playerid, Textdraw2[playerid]);
	CreateTextEx(playerid);
	TextDrawShowForPlayer(playerid, Textdraw1[playerid]);
	TextDrawShowForPlayer(playerid, Textdraw2[playerid]);
	return 1;
}