diff --git a/index.php b/index.php index de58535..c86824b 100644 --- a/index.php +++ b/index.php @@ -1,45 +1,8 @@ - - - - - - GameReality - - -

- -

- - - 5? ($kötid >= 120? round($kötid/60).' minuter': ($kötid-4).' sekunder'): 'Ingen'; - +$queue_pos = array_search($_COOKIE['queue'], $queue, true); //1=Aktuell spelare, 2=nästkommande spelare ..., false=Inte i kön +$wait = $queue_pos > 2? $queue[0]-time()+($queue_pos-3)*$speltid: 0; +if(isset($_SERVER['QUERY_STRING'])) switch($_SERVER['QUERY_STRING']) { + case 'queue': echo $wait; exit; + case 'time': echo isset($queue[2]) && $queue[2]==$_COOKIE['queue'] && $queue[0]>time()? $queue[0]-time(): 0; exit; + + case 'exit': + if($queue_pos) { + unset($queue[$queue_pos]); + if($queue_pos == 2) {$queue[0]=time()+$speltid+4; $queue[1]=0;} //Nästa spelare får lite extratid, eftersom hen får börja oväntat + file_put_contents('status/queue', implode("\n", $queue)); + } + header("Location: index.php"); + exit; + case 'new': + if($queue_pos) { + unset($queue[$queue_pos]); + $queue = array_values($queue); + if($queue_pos == 2) {$queue[0]=time()+$speltid+4; $queue[1]=0;} //Nästa spelare får lite extratid, eftersom hen får börja oväntat + $queue_pos = false; + } +/* + $queue_pos = count($queue); + setcookie('queue', $queue[]=md5(microtime())); + setcookie('queueStart', $wait = $queue[0]-time()+($queue_pos-3)*$speltid); + file_put_contents('status/queue', implode("\n", $queue)); + header("Location: queue.php"); + exit; +*/ + if(!isset($_COOKIE['queue'])) setcookie('queue', md5(microtime())); + header("Location: queue.php?new2"); + exit; + + case 'new2': + if($queue_pos) { + // Här måste något vara fel... + header("Location: queue.php"); //Minst dåliga åtgärden? + exit; + } + elseif(!isset($_COOKIE['queue'])) { header('Location: index.php?check_cookie'); exit; } + $queue_pos = count($queue); + if($queue_pos > 6) { header('Location: index.php?queue_full'); exit; } + $queue[] = $_COOKIE['queue']; + setcookie('queueStart', $wait = $queue[0]-time()+($queue_pos-3)*$speltid); + file_put_contents('status/queue', implode("\n", $queue)); + header("Location: queue.php"); + exit; + + + + +} +if(!isset($_COOKIE['queue'])) { header('Location: index.php?check_cookie'); exit; } +if(!$queue_pos) { //Se till att spelaren finns i kön + // Om man kommer hit så har något gått fel... + header("Location: queue.php?new"); + exit; +// $queue_pos = count($queue); +// $kölapp = md5(time()); +// setcookie('queue', $kölapp);} +// $queue[]=$kölapp; +// file_put_contents('status/queue', implode("\n", $queue)); + //$_SESSION['start_time'] = $wait = $queue[0]-time()+($queue_pos-3)*$speltid; +// setcookie('queueStart', $wait = $queue[0]-time()+($queue_pos-3)*$speltid); + +} +//if($queue_pos==2){ echo 'först i kön. hoppar till spela.php'; exit;} +$starttid = $_COOKIE['queueStart']? $_COOKIE['queueStart']: $wait; +if($queue_pos==2){ header("Location: spela.php"); exit;} +// Sniffa browser: + preg_match('/Chrome\/(\d+\.\d+)/', $_SERVER['HTTP_USER_AGENT'], $d); $chrome = (float) $d[1]; + preg_match('/Opera[\/\s](\d+\.\d+)/', $_SERVER['HTTP_USER_AGENT'], $d); $opera = (float) $d[1]; + preg_match('/Gecko\/(\d+)/', $_SERVER['HTTP_USER_AGENT'], $d); $gecko = (int) $d[1]; + if(!$opera) { preg_match('/MSIE\s(\d+\.\d+)/', $_SERVER['HTTP_USER_AGENT'], $d); $msie = (float) $d[1]; } + preg_match('/Safari\/(\d+(\.\d+)?)/', $_SERVER['HTTP_USER_AGENT'], $d); $safari = (float) $d[1]; + preg_match('/Konqueror\/(\d+\.\d+)/', $_SERVER['HTTP_USER_AGENT'], $d); $konqueror = (float) $d[1]; + preg_match('/AppleWebKit\/(\d+(\.\d+)?)/', $_SERVER['HTTP_USER_AGENT'], $d); $awk = (float) $d[1]; //bättre än safari enligt flera källor + preg_match('/KHTML\/(\d+(\.\d+)?)/', $_SERVER['HTTP_USER_AGENT'], $d); $khtml = (float) $d[1]; +// +//list($ip, $port) = explode(':', $_SERVER['SERVER_NAME']); +//if(!$port) $ip='192.168.1.223'; +//$kamera_adr = "http://$ip:8088"; +$kamera_adr = "http://".file_get_contents('status/robot_ip').":8088/cam"; +function webcamklient($typ) { + global $kamera_adr; + switch($typ) { + case 'mjpg': + echo ''; + break; + // case 'java': + // echo '', + // 'Test'; + // break; + // case 'javascript': + // echo ''; + // echo ''; + // break; + default: + echo ''; + } +} +if(isset($_GET['webcamklient'])) { webcamklient($_GET['webcamklient']); exit; } header('Content-Type: text/html; charset=utf8'); - ?> + - - - - - - GameReality - - - + + GameReality + + + - +
-

GameReality 2019

- - - -

Ett dataspel, där ni fjärrstyr riktiga holonomiska/omni kamera-robotar, utrustade med laser-tag vapen, över internet. -

-
- - -
-

Om kakor

- -

Enligt lagen om alltings tillkrånglande (lagen om elektronisk kommunikation 2003:389 18§), - som trädde i kraft den 25 juli 2003, ska alla som besöker en webbplats med kakor - få information om vad en kaka är. Så därför, laglydiga - som vi är, har vi samlat ihop lite info om saken.

- -

En kaka är en liten textfil som webbplatsen du besöker sparar på - din dator. Kakor används på många webbplatser för att - ge en besökare tillgång till olika funktioner. Informationen i kakan - är möjlig att använda för att följa en användares - surfande.

- -

Det finns två typer av kakor. Den ena typen sparar en fil under en längre - tid på din dator. Den används till exempel vid funktioner som talar - om vad som är nytt sedan användaren senast besökte den aktuella - webplatsen. Den andra typen av kakor kallas sessionskakor. Under tiden du - är inne och surfar på en sida, lagras den här kakan temporärt - i din dators minne exempelvis för att hålla reda på vilket - språk du har valt. Sessionskakor lagras inte under en längre tid - på din dator, utan försvinner när du stänger din webbläsare.

- -

Denna GameReality använder sig av den senare typen av kakor för att hålla - reda på vem som står på tur att spela. - Kakan som sparas är bara en vanlig textfil med lite bokstäver och - några siffror. Den kan på inget sätt ge oss info om din dator (sådant tar vi reda på annat sätt) eller användas för att spåra vilka politiker du valt. - Skulle du mot förmodan vilja stoppa denna kaka så får du titta i din webbläsares - manual hur man gör. Men då får du tyvärr inte vara med och spela.

- -

Observera att det är själva GameRealityservern med adressen http:// - som sparar kakorna.

+

GameReality 2019 +

-

För att få veta mer om vad en kaka är och hur lagen ser ut besök Post - & Telestyrelsens hemsida om kakor
- Men innan du fördjupar dig i texterna där vill jag påpeka att de risker som - där uppges finnas med kakor i ännu högre grad gäller andra tekniker som inte - omfattas av lagen om alltings tillkrånglande.

+ -
- - - - - - - - -
-
- Den webbstyrda roboten -
-
+

A real world game environment with new events every day. Press keys W,A,S,D and arrows right/left to control the robot. +

+
+
+ Problem med bilden?
testa någon av dessa:
+ + +
+--> +
---> - - - - - - - - -
- -

- För närvarande är GameReality avstängd pga tekniskt fel eller underhåll.
- Välkommen åter om en liten stund -

- -

- För närvarande är det många som väntar på att få besöka GameReality.
- Välkommen åter om en liten stund -

- - -
ETT FEL UPPSTOD! - För att kunna se GameReality här måste tredjepartskakor från GameRealitys server http:// tillåtas i webbläsaren!
Ändra inställningarna för kakor och försök igen.
- - -
Calculated queue time: - - -

-Just nu verkar Internet Explorer inte vara helt kompatibel med GameReality. -Får du problem med Internet Explorer så pröva vilken annan webläsare som helst:
- Mozilla Firefox
- Google Chrome
- Apple Safari
- Opera -

- -
- - - - +
+
0? 'mjpg': 'javascript'); ?>
+
+
+ +
+ + +
- + + +
+
+ + + -