FAQ |
Kalender |
![]() |
#1 | ||
|
|||
Flitig postare
|
Det jag skall göra är ett energi regeneration skript(till ett spel)
På en sida så har jag ett javaskript som körs vis ett visst intervall. Ungefär såhär: setTimeOut("addEnergy()", 5000); som körs var femte sekund. Det addEnergy gör är att den gör ett AJAX anrop till en PHP sida som plussar på att värde som redan finns i databasen. Alltså man får mer energi. Detta funkar endast om man är på den sidan. Men om jag stänger ner webbläsaren och går iväg en stund så vill jag att det inte skall sluta att fyllas på. Hur kan man åstadkomma det? |
||
![]() |
![]() |
![]() |
#2 | ||
|
|||
Flitig postare
|
Sök på "cron job" ;-)
|
||
![]() |
![]() |
![]() |
#3 | ||
|
|||
Flitig postare
|
Nej, det är inte det jag är ute efter.
|
||
![]() |
![]() |
![]() |
#4 | ||
|
|||
Flitig postare
|
Vill du inte köra det med cron job kan du ju kolla klockslag sedan man sist var inne och plussa på. Funkar ju det med. Men är inte webbläsaren öppen måste det ju antingen ske på serversidan med t.ex cron job eller uppdateras/kompenseras när man kommer tillbaka till sidan.
|
||
![]() |
![]() |
![]() |
#5 | ||
|
|||
Flitig postare
|
Det är det jag tänkt göra när man öppnar skriptet igen
då kollar man liksom. Men om vi säger såhär att man får 20 energi / timme och det är ju alltså 1 energi var 180 sekund. Då kan man väl kolla hur många 180 sekunder som fått plats i tiden mellan det sista inlagda energi och tiden som är nu. Resten av det ver jag inte var det skall ta vägen eftersom ja vill inte att man ska förlora ngn tid på det. Förstår du nu? ![]() |
||
![]() |
![]() |
![]() |
#6 | ||
|
|||
Flitig postare
|
Kör en koll på hur många gånger 180 sek har förlutit. Gör jämnt tal av det. Ta bort 180 gånger det jämna talet och lämna kvar det som blev "över". Så förlorar man ju inget.
|
||
![]() |
![]() |
![]() |
#7 | ||
|
|||
Flitig postare
|
Vänta, nu förstår jag inte riktigt? Berätta om det där
![]() |
||
![]() |
![]() |
![]() |
#8 | ||
|
|||
Flitig postare
|
hmm, inte så smart mitt förra förslag... Det smartaste är om du bara kör på att spara och tänka sekunder. Sen när du via javascript hos klienten skall visa poängen så ta sekunder/180. Då blir det enklare och mer precist.
|
||
![]() |
![]() |
![]() |
#9 | ||
|
|||
Flitig postare
|
Men man skall kunna öka sin rate. Man kan få 3600 energi / timme också
![]() |
||
![]() |
![]() |
![]() |
#10 | ||
|
|||
Flitig postare
|
Du kan ju t.ex spara sekunderna i olika fält beroende på vad sekunderna är värda. Räkna sen ihop dem efter antal*värde och skicka tillbaka till klienten. Finns ju en massa vägar att gå... Men att använda en timestamp/Unix är väl det smidigaste antar jag. Allt beror på vad du vill åstadkomma och är ju en aning svårt att veta alla scenarior du har tänkt dig
![]() |
||
![]() |
![]() |
Svara |
|
|