Re:Sistema di vite e salvataggio dei dati

#178332

ccddxxff
Partecipante
  • Blenderista
  • Conversazioni totali103

se ho capito bene, i tuo problema è non far ripartire tutto dall’inizio quando la macchina ti cade.

puoi risolvere così: (è un po lungo ma dovrebbe funzionare)

crei un plane, o un cube che lo chiamerai checkPoint (per far prima, cP), posizioni il cp alla partenza, e gli registri la ipo che comprende Loc e Rot. poi ti sposti di 1 frame, fai avanzare di quanto vuoi (ovviamente sempre seguendo la strada) il cp. fai così fin quando finisce la pista. Ora alla macchina gli dai una prop macchina e al cp gli dai la property Conta, e questa serie di logic brik:

collision(o near)


and


property: conta ; add 1

prop: macchina

property:Conta


and –


ipo property :conta

changed

Fin qua, ti spiego cosa accade. Praticamente quando con la macchina colpisci il cp, incrementi il contatore di collisioni ‘Conta’. Il conta poi lo usi come numero di frame corrente che deve essere applicato alla ipo. Risultato:

macchina ferma –> posizione cp sullo start della pista, conta 0;

la macchina collide con cp –> conta = 1, il cp si sposta nella posizione successiva (qualla che hai dato con la ipo)

e così via.

Non so se fin qua è chiaro.

il cp non è altro che un chekpoint che si sposta sulla pista man mano che avanzi.

Ora alla macchina aggiungi un collision per la collsisione del piano MORTE e un controller script

e crei uno script del genere

Code:

import GameLogic as g

scene = g.getCurrentScene()

cp = scene.objects[‘OBcheckPoint’] # OB deve stare, poi aggiungi il nome che hai dato al ceck

cont = g.getCurrentController()
macchine = cont.owner
collisione = cont.sensors[‘collisione’] # metti il nome che hai dato al sensore della collisione col piano della MORTE

if collisione.positive:
macchina.position = cp.position

dquindi ora hai il cp che si trova sulla pista nella posizione dell’ultima collisione prima di cadere, e quando cadi, lo script ti riporta li senza la necessità  di riavviare il gioco.

Dovrebbe andare.

Dubbi chiarimenti o imprecisioni, non esitate a parlare.