DVD Architect

Ξ 1.038 visualizzazioni Ξ I commenti sono disabilitati

DVD Architect Pro – Scripting: Capitolo 5

posted by Yarin VooDoo

A questo possiamo passare alla creazione dello script che gestirà l’accesso a codice che utilizzerà 3 registri GPRM:

  • GPRM0 = verrà utilizzato per contare quante volte viene eseguito lo script ed interromperlo dopo 3 esecuzioni.
    GPRM1 = verrà utilizzato per memorizzare il valore di SPRM8 e, quindi, dividendolo per 1024 per specificare l’attuale tasto premuto
    GPRM2 = verrà utilizzato come contatore per i primi 2 numeri corretti, quindi verrà utilizzato nella parte finale dello script come condizione per verificare che tutte e 3 le cifre inserite siano corrette.

Iniziamo aumentando di 1 il nostro contatore GPRM0:

GPRM0 = GPRM0 + 1

Quindi preleviamo il valore di SPRM8, lo copiamo in GPRM1 e lo dividiamo per 1024:

GPRM1 = SPRM8 [Highlighted button]
GPRM1 = GPRM1 / 1024

A questo punto divideremo lo script in 3 parti ciascuna delle quali verificherà che la cifra inserita sia corretta (nel nostro caso 291), per far questo dovremo richiamare 3 Label (Etichette) che inseriremo successivamente nel nostro script:

if (GPRM0 = 1) then GotoLabel ‘Label0’
if (GPRM0 = 2) then GotoLabel ‘Label1’
if (GPRM0 = 3) then GotoLabel ‘Label2’

Quindi iniziamo con la prima verifica.

Se la cifra inserita è diversa da 2, questa è errata quindi linkiato il 1° pulsante del nostro menu Keypad causando anche il riavvio dello script che passerà alla 2° verifica:

Label0:
if (GPRM1 != 2) then Link page:’Keypad (Page 1)’, button: ‘1: Link – DVD Script 1’

Se invece la cifra inserita è corretta allora aumentiamo di 1 il nostro contatore GPRM2 e torniamo sul 1° pulsante del nostro menu:

GPRM2 = GPRM2 +1
Link page: ‘Keypad (Page 1)’, button: ‘1: Link – DVD Script 1’

Passiamo dunque alla 2° verifica utilizzando un meccanismo simile al precedente ma aggiungendo anche un controllo sul registro GPRM2, infatti questa 2° fase deve essere eseguita solo se GPRM2 è uguale ad 1:

Label1:
if (GPRM2 != 1) then Link page:’Keypad (Page 1)’, button: ‘1: Link – DVD Script 1’

Quindi verifichiamo la cifra inserita e aumentiamo ancora di 1 GPRM2:

if (GPRM1 != 9) then Link page:’Keypad (Page 1)’, button: ‘1: Link – DVD Script 1’
GPRM2 = GPRM2 +1
Link page: ‘Keypad (Page 1)’, button: ‘1: Link – DVD Script 1’

Infine l’ultima verifica sempre controllando anche il valore di GPRM2 che in questo caso deve essere uguale a 2:

Label2:
if (GPRM2 != 2) then GotoLabel ‘Label3’
if (GPRM1 != 1) then GotoLabel ‘Label3’

Se tutto è corretto azzeriamo i registri GPRM0 e GPRM2 e richiamiamo la pagina di conferma che ci poterà ai contenuti speciali (è possibile linkare direttamente tale pagina se si preferisce):

GPRM0 = 0
GPRM2 = 0
Link page: ‘Keypad (Page 2)’, button: ‘Default’

Come si nota stavolta non ritorniamo sul pulsante 1, bensì ci spostiamo in un’altra area dello script dove azzeremo i registri GPRM0 e GPRM2 e richiameremo il menu o il media che comunica l’errato inserimento del codice:

Label3:
GPRM0 = 0
GPRM2 = 0
Link page: ‘Keypad (Page 3)’, button: ‘Default’

Terminato lo script non ci resta che collegare tutti e dieci i pulsanti del nostro keypad ad esso e verificare nella preview il funzionamento.
Vi suggerisco di tenere d’occhio, nella preview, come cambiano i valori nei registri SPRM e GPRM.

Questo esempio è basato sul seguente link:

http://library.creativecow.net/articles/alexzander_alex/code_lock.php

Di seguito il listato completo:

  • GPRM0 = GPRM0 + 1
  • GPRM1 = SPRM8 [Highlighted button]
  • GPRM1 = GPRM1 / 1024
  • if (GPRM0 = 1) then GotoLabel ‘Label0’
  • if (GPRM0 = 2) then GotoLabel ‘Label1’
  • if (GPRM0 = 3) then GotoLabel ‘Label2’

Label0:

  • if (GPRM1 != 2) then Link page:’Keypad (Page 1)’, button: ‘1: Link – DVD Script 1’
  • GPRM2 = GPRM2 +1
  • Link page: ‘Keypad (Page 1)’, button: ‘1: Link – DVD Script 1’

Label1:

  • if (GPRM2 != 1) then Link page:’Keypad (Page 1)’, button: ‘1: Link – DVD Script 1’
  • if (GPRM1 != 9) then Link page:’Keypad (Page 1)’, button: ‘1: Link – DVD Script 1’
  • GPRM2 = GPRM2 +1
  • Link page: ‘Keypad (Page 1)’, button: ‘1: Link – DVD Script 1’

Label2:

  • if (GPRM2 != 2) then GotoLabel ‘Label3’
  • if (GPRM1 != 1) then GotoLabel ‘Label3’
  • GPRM0 = 0
  • GPRM2 = 0
  • Link page: ‘Keypad (Page 2)’, button: ‘Default’

Label3:

  • GPRM0 = 0
  • GPRM2 = 0
  • Link page: ‘Keypad (Page 3)’, button: ‘Default’

Qui trovate il file d’esempio. (Keypad.dar)

Pagine: 1 2 3 4 5

Condividi Questo Articolo

User Profile

Progettista di automazioni industriali e anche Sony Certified Vegas Editor dal 2008, Sony Certified Vegas Trainer, Sony ICE dal 2009 oltre che Trainer ufficiale Sony Creative Software per l'Italia.software utilizzati: Sony Vegas Pro, Sony DVD Architect Pro, Sony Acid Pro, Sony Soundforge, Sony Cinescore, Boris Red, After Effects; competenze: Editing Audio, Music Creation, Editing Video, Authoring DVD

User Name: Yarin VooDoo

Iscriviti alla nostra Newsletter

Iscriviti alla nostra Newsletter

Per iscriverti e restare sempre aggiornato su tutte le nostre novità è sufficiente inserire il tuo indirizzo email qui di seguito. Ti verrà inviata una mail per confermare la tua iscrizione.

Video