-
.
Ciao ragazzi! Scusate se vi disturbo, ma vorrei sapere come si imposta una sequenza per cui se non fai una determinata missione entro il tempo stabilito succede qualcosa. Nel mio caso volevo fare che se il Giocatore non uccide tutti i guerrieri di un gruppo entro tot tempo succede una determinata cosa; se invece riesce a ucciderli entro il tempo stabilito non succede niente e il tempo si annulla. Inoltre vorrei che si veda lo scorrere del tempo a schermo, tipo countdown. Come posso fare? . -
.
1) Scrivi il nome del gruppo di guerrieri;
2) Scrivi cosa succede nel caso in cui scada il tempo;. -
.
Ok. Potreste scrivermi il codice di questa cosa? . -
.
Rispondi prima alle domande che ti ho fatto, perché il codice potrebbe essere scritto in modo diverso e/o pił semplice a seconda dei casi. . -
.
Il nome del gruppo dei guerrieri č "guardiemercato". Se il Giocatore non riesce ad uccidere il gruppo entro il tempo stabilito succede questo: RunConv("gc"); SpawnGroup("guardiacittadina"); guardiacittadina.SetCommand("attack",hero1.obj); In pratica parte la conversazione "gc", il gruppo invisibile "guardiacittadina" spowna e attacca l'eroe. Se il Giocatore riesce ad uccidere tutti i guerrieri del gruppo "guardiemercato" non succede niente e il tempo si annulla. . -
.
Al netto di eventuali errori di distrazione o di battitura, il codice della sequenza dovrebbe essere il seguente: CODICEint timer, hours, mins, secs, remainder;
str val1,val2,val3;
timer=778; //Cambia questo valore (in secondi) nel numero desiderato (funziona anche in ore nel caso di lunghi incontri)
while(timer>0){
hours=timer/3600;
remainder=timer-(hours*3600);
mins=remainder/60;
remainder=remainder-(mins*60);
secs=remainder;
//CONVERSIONE DEI VALORI NUMERICI IN STRINGHE CORRETTE
//---Ore---
if(hours<10){
val1="0"+hours;
}
else{
val1=hours;
}
//---Minuti---
if(mins<10){
val2="0"+mins;
}
else{
val2=mins;
}
//---Secondi---
if(secs<10){
val3="0"+secs;
}
else{
val3=secs;
}
ShowAnnouncement("KillingTime", Translate("Tempo rimasto - "+val1+":"+val2+":"+val3));
if(guardiemercato.count<=0){
HideAnnouncement("KillingTime");
break;
}
timer=timer-1;
Sleep(1000);
}
if(guardiemercato.count>0){
RunConv("gc");
SpawnGroup("guardiacittadina").SetCommand("attack",hero1.obj);
}
Edited by TheMaster0017 - 7/6/2018, 02:41. -
.
Gracias, Maestro, siempre viene bien una secuencia de cuenta atrįs . -
.
Mi dą errore alla riga dei //---Minuti---, dove c'č scritto mins="0"+mins; Mi dice Infix operator=can not be applied . -
19supreme.
User deleted
Per forza non puoi assegnare a un int un tipi string. . -
.
Ops, errore di distrazione (come avevo scritto su). Ora ho corretto e dovrebbe andare bene. . -
.
Perfetto 👍 Grazie mille! . -
.
Funziona? . -
19supreme.
User deleted
Tanto sappiamo benissimo entrambi che alla fine crasherą.SPOILER (clicca per visualizzare)Tranquillo Pavanello, non ho visto niente di pericoloso in quel codice.