Newsgroup: it.comp.lang.javascript
Titolo: Il mio game.... ancora!!

Allora.
Ho fatto un timeout, inserendo un tempo massimo entro il quale sterminare le
navicelle.
Ecco come:
======================================
setTimeout("finegioco()", 60000);
function finegioco() {
alert("Tempo scaduto!")
MM_showHideLayers('document.layers[\'Layer1\']','document.all[\'Layer1\']','
hide','document.layer
s[\'Layer2\']','document.all[\'Layer2\']','hide','document.layers[\'Layer3\'
]','document.all[\'La
yer3\']','hide','document.layers[\'Layer4\']','document.all[\'Layer4\']','hi
de','document.layers[
\'Layer5\']','document.all[\'Layer5\']','hide','document.layers[\'Layer6\']'
,'document.all[\'Laye
r6\']','hide','document.layers[\'Layer7\']','document.all[\'Layer7\']','hide
','document.layers[\'
Layer8\']','document.all[\'Layer8\']','hide','document.layers[\'finegioco\']
','document.all[\'fin
egioco\']','show');
}
======================================
Il problema: io vorrei che una volta finito il gioco, segni il tempo rimasto
all'utente e quindi i punti totalizzati.
In pratica:
============================
var tempolimite = 60000   // millisecondi
var tmptrascorso = 0
============================
poi, controllare il tempo rimasto:
===============================================
if  (tempolimite==0)
{ alert("Tempo scaduto!!")
MM_showHideLayers('document.layers[\'Layer1\']','document.all[\'Layer1\']','
hide','document.layer
s[\'Layer2\']','document.all[\'Layer2\']','hide','document.layers[\'Layer3\'
]','document.all[\'La
yer3\']','hide','document.layers[\'Layer4\']','document.all[\'Layer4\']','hi
de','document.layers[
\'Layer5\']','document.all[\'Layer5\']','hide','document.layers[\'Layer6\']'
,'document.all[\'Laye
r6\']','hide','document.layers[\'Layer7\']','document.all[\'Layer7\']','hide
','document.layers[\'
Layer8\']','document.all[\'Layer8\']','hide','document.layers[\'finegioco\']
','document.all[\'fin
egioco\']','show');
}
===============================================
E se invece si finisce il gioco:
=================================
alert ("Bravo hai terminato il gioco realizzando" +
(tempolimite-tmptrascorso) + " punti" );
=================================
ma come posso gestire il tempo in questo modo?
Dovrei usare un setTimeout? Ma come?
Per rispondere al messaggio di Alessandro... si' e' possibile cambiarlo (ho
visto un sito che all'interno della sua finestra mostrava un mouse bellino,
non presente tra gli standard e quando si passava sopra i link, il contorno
cambiava colore, effetto illuminato, ma non ho + l'url...).
Per l'altra domanda... dove stava l'errore, nel richiamo nell'onclick con i
punti e virgola mi ero incasinato la mente (+ di quanto non lo sia di gia').
Per quando sara' pronto il gioco... ormai ho quasi finito ma mi stanno
venendo in mente delle ideuzze... del tipo: una volta che spari a tutte le
navicelle, il gioco e' si terminato, ma solo il primo livello (e anche se
non pronti gli altri ci si potra' giocare). Poi, con il gioco sbarcherai su
Marte e dovrai lottare con dei carri armati futuribili.... insomma, se
riesco (ripeto se), dovrebbe venire un gioco vero e proprio... cmq anche la
prima parte non e' male ;-P. Grazie ancora per gli aiuti... verrete inseriti
nei credits... :-)
--
A presto e buona giornata.
ROBERTO E ALESSANDRO ABBATE
   Galileo - 
http://web.tiscalinet.it/galileo

riesco (ripeto se), dovrebbe venire un gioco vero e proprio... cmq
Come se riesci... non farci questo ... DEVI riuscire a costo che
ti diamo una mano anche la notte!!!
Io voglio misuarmi con quei carri futuribili... mi fanno già un po'
paura!!
:))
Ora parto, mi sono guadagnato un W.E. lungo!!
IUPPPY!!
Ciao a tutti
a lunedì!!
--
Bye
Ro<*¿*>berto

 IUPPPY!!
Buon Week End





Ho visto l'esempio di Darius... in piu' pero' a me servirebbe il fatto che i
secondi che non hai utilizzato si trasformino in punti ottenuti.... del
tipo:
tempolimite-tempotrascorso=punti
Se riesci cmq a utilizzarlo, posta il sorgente mi raccomando :-) Anche
perche' non se se per il tuo gioco e' la stessa cosa, ma per me l'opzione
senza timer non serve.
Per il discorso della pulizia del codice... cerchero di rimanere pulito! :-)
Per i credits... di nulla! Grazie anzi!


Date un'occhiata a questo codice:
===========================================
<html>
<head>
<script>
<!--
var entered = new Date()
function track()
{
var now = new Date()
var seconds = Math.floor((now.getTime() - entered.getTime()) / 1000)
var minutes = Math.floor(seconds /60)
var second = seconds % 60
var minute = minutes % 60
document.time.timer.value = minutes + ":" + seconds
var timeID= setTimeout("track()",1000)
var punteggio = (60-second)
if (second==60 && minute==0)
{alert("Tempo scaduto!");}
}
// -->
</script>
<title></title>
</head>
<body BGCOLOR="#ffffff" link="#CC0033" vlink="#333399" alink="#FF0000"
onLoad="track()">
<form NAME="time"><div align="center"><center><p>Sei in questa pagina da:
<input TYPE="text" NAME="timer" SIZE="6" VALUE="0:00">
secondi.</p></center></div></form></font>
</body>
</html>
===========================================
Con questo codice potrei anche mostrare il punteggio realizzato con
alert("Hai finito il gioco realizzando "+punteggio+" punti")
Ho provato a integrarlo nel mio gioco ma mi da errore nell visualizzazione
della pagina.
Se riuscissi a sistemarlo nel mio script potrebbe essere buono. Naturalmente
se ci fosse uno script che visualizzi il conto alla rovescia sarebbe
preferibile, cmq questo potrebbe essere una valida alternativa





Allora,
ho implementato lo script countdown nel mio e funziona!!!!!!!!!!!!!!!
SIIIIIIIIIIIIIII!!!!!!!!
e vaiiiiiiiiiiiiiiiiiiiiiiii!!!!!!!!!!!!!!!!!!!!!!!!!!
Cioe', all'inizio mi dava un problema perche' anche finendo il gioco il
setTimeout continuava. Allora ho fatto:
==============================
timerID = setTimeout ("Countdown()",1000);
==============================
nel setTimeout e alla fine del gioco:
===================
 clearTimeout(timerID)
===================
e adesso e' tutto ok!!
Pero' sono uno abbastanza incontentabile e adesso ho bisogni di un consiglio
da amico (invece che da amico programmatore). In pratica ho da poco
installato NT e la mia scheda audio non ha i driver per NT (devo cercarli in
rete). E allora: voglio inserire un bel botto o robe simili quando colpisci
una navicella, ma non posso testare nessun suono perche' la mia scheda audio
non me lo permette (per ora...). E quindi: vai su
http://web.tiscalinet.it/galileo/dhtml/demo/index.htm
 e scrolla la pag fino
ai giochi e passatempo. Li trovi un pacco di giochi in DHTML. Molti ricordo
che avevano dell'audio al momento dello sparo o robe simili... se ne trovi
uno adatto allo scoppio di una navicella dimmelo che lo inserisco.
Grazie ancora 1000. Grazie veramente!!! :-)
altro che credits, nel sorgente ti inserisco pure... ciao ;-P


 wrote in message
7obnbg$rba$1...@nslave1.tin.it...



Ciao..
Posso distruggere qualche carro
su marte?!?!
:)
