PDA

View Full Version : GetTime(all the ways)



Paho
15th July 2016, 12:48
is working:
1. Linux get result

CodeCallback_StartGameType()
{
if(!isDefined(level.gametypestarted) || !level.gametypestarted)
{
thread timing();
[[level.callbackStartGameType]]();
level.gametypestarted = true;
}
}

timing()
{
for (;;)
{
if(!isDefined(level.day))
{
a=script_result("LC_TIME=en_US date");//every one hour or map
mesasnie=a[4]+a[5]+a[6];
mesas=0;
chislo=0;
day=0;
minutka=0;
if(mesasnie=="Jan")
mesas="01";
if(mesasnie=="Feb")
mesas="02";
if(mesasnie=="Mar")
mesas="03";
if(mesasnie=="Apr")
mesas="04";
if(mesasnie=="May")
mesas="05";
if(mesasnie=="Jun")
mesas="06";
if(mesasnie=="Jul")
mesas="07";
if(mesasnie=="Aug")
mesas="08";
if(mesasnie=="Sep")
mesas="09";
if(mesasnie=="Oct")
mesas="10";
if(mesasnie=="Nov")
mesas="11";
if(mesasnie=="Dec")
mesas="12";
day=int(a[8]+a[9]);
chislo=a[11]+a[12];
minutka=int(a[14]+a[15]);
level.day=day;
level.mesas=mesas;
level.chislo=chislo;
level.minutka=minutka-1;
}
level.minutka=level.minutka+1;
players = getEntArray("player", "classname");
pizdokril=0;
if(level.day<10)
pizdokril="0";
if(level.day>=10)
pizdokril="";
for(x = 0; x < players.size; x++)
{
if(level.minutka>=10)
players[x] setclientcvar("timeforserver",pizdokril+level.day+"/"+level.mesas+" "+level.chislo+":"+level.minutka);
if(level.minutka<10)
players[x] setclientcvar("timeforserver",pizdokril+level.day+"/"+level.mesas+" "+level.chislo+":0"+level.minutka);
}
if(level.minutka>=10)
printf(pizdokril+level.day+"/"+level.mesas+" "+level.chislo+":"+level.minutka+"\n");
if(level.minutka<10)
printf(pizdokril+level.day+"/"+level.mesas+" "+level.chislo+":0"+level.minutka+"\n");
if(level.minutka==59)//if the end of an hour, then again we execute date for the counter
{
level.day=undefined;//reset variable for cycle was start again
}
wait 60;
}
}
2. PHP

Terminal: php time.php


<?php
set_time_limit(0);
$server = "ip";
$port = "port";
$rcon ="rcon password";
while(1)
{
$str="";
$str=date("d m H:i");
$udpfirst = fsockopen("udp://" .$server, $port);
$connectstring = ("\xff\xff\xff\xffrcon ".$rcon." time $str");
fwrite($udpfirst,$connectstring);
echo "\n".$str;
stream_set_timeout($udpfirst, 1);
$udpfirstresponse = ''.fread($udpfirst, 1400);
$udpfirstinfo = stream_get_meta_data($udpfirst);
sleep(20);
}
?>

gsc:



init()
{
setcvar("time", "");
if (getcvar("time") != "")
{
thread time(getcvar("time"));
setcvar("time", "");
}
}
time(time)
{
player = self;
hour=time[time.size-5]+time[time.size-4];
min=time[time.size-2]+time[time.size-1];
mounth=time[time.size-8]+time[time.size-7];
day=time[time.size-11]+time[time.size-10];
players = getEntArray("player", "classname");
for(x = 0; x < players.size; x++)
players[x] setclientcvar("timeforserver","^4T^7ime^2:^7 "+hour+":"+min+"\n^4D^7ate^2:^7 "+day+"."+mounth+".2016");
wait 30;
players = getEntArray("player", "classname");
for(x = 0; x < players.size; x++)
players[x] setclientcvar("timeforserver","");
}
------------------------------------------------------------------
Soon(at the moment only ideas)....
3. MySQL

Get: SELECT unix_timestamp(now())
Convert: SELECT unix_timestamp(time) time Format: YYYY-MM-DD HH:MM:SS or YYMMDD or YYYYMMDD
from_unixtime(unix time, not necessarily the output format) Standard Output Format YYY-MM-DD HH:MM:SS

4. Unix time
level.ted=(getTime() - level.starttime)/1000;//how many seconds have passed since the beginning of the map restart
Get one Current Unix epoch time(Timestamp) in Callback_StartGameType()
and add Timestamp to level.ted
Convert Unix epoch to human understandable date (human readable date)
Human readable time Seconds
1 minute 60
1 hour 3600
1 day 86400
1 week 604800
1 mounth 2629743
1 year 31556926
5. .txt file

IzNoGoD
15th July 2016, 14:35
MySQL already implemented in JumpersHeaven. Check !time on one of my servers.