terça-feira, 15 de dezembro de 2009

Tutorial - Baú - Old School

Bom, pessoal... Depois de bastante tempo sem postar absolutamente NADA, resolvi postar o resultado de minhas recentes experiências com o Engine.

Pode apostar que dá muito trabalho, portanto é melhor se concentrar bem e tentar não errar em nada, ok?



Mãos à obra! Iremos fazer um baú, onde o seu personagem irá armazenar os ítens do seu inventário para o baú. Para isso, precisaremos de uma Collection. Então, vá em Variables/Switches > Edit Collections.

Crie uma Collection chamada de Baú.

Agora é que vai começar a parte mais complicada: Crie duas interfaces chamadas de Baú - Inventário e Baú - Baú.

Nós trabalharemos com duas interfaces ativas ao mesmo tempo, portanto eu sugiro que cries da seguinte forma:


LEMBRANDO: Cada lado é UMA interface! Nada de achar que é preciso criar uma só interface, dividindo-a ao meio, ok?


Agora vamos configurar a interface que ficará para o inventario (Baú - Inventário):

Crie um field de nome item. Em "Inicial Text / Value", ponha Item, também. Agora, em "Retrieve Text / Value", copie e cole isto: "Item(Field("this").Name).Title".

Em "Spawm Collection", copie e cole isto: "Char("main").Items". "Offset X" ponha: "0". Em "Offset Y" ponha: "32". E, em "Columns", deixe "1".

Agora, crie um outro field que ficará a uma pequena distância do field "item", na mesma "linha" em que ele está. Chame-o de "quantidade". Você pode colocar "quantidade", também, em "Inicial Text / Value". E uma coisa muito importante que você deve fazer: Em "Associate with Field", selecione o field "item". Agora, em "Retrieve Text / Value", copie e cole: "Char("main").ItemInventoryCount(Field("relate").Name)".


 


Se você quiser colocar a imagem reduzida do item. Coloque, um pouco próximo do field "item", na mesma "linha" um novo field de nome "imagem". Em "Associate with Field", selecione "item". E em "Retrieve Text / Value", copie e cole: "Item(Field("relate").Name).Graphic". E, em "Width", coloque "32" e em "Height", ponha "32". (Mas, nesse caso, não usaremos o gráfico - se você quiser, pode usar!)

Agora, clique com o botão direito do mouse na interface > vá em "Properties" e edite o "Scrolling Retangle".
Ficará assim:




Bom, agora, clique no field "item"  e, em "Triggers", clique em "Activated" e clique em "Edit Script".

Coloque uma "Mensage Box" e ponha: Você quer mesmo transferir "\V[Field("this").Name]" para o baú?.

Na parte "\V[Field("this").Name]", irá indicar o nome do item que você apetou ENTER, quando selecionado, seja lá qual for. Por exemplo: "Você quer mesmo transferir Pistol para o baú?". Claro, você pode modificar a mensagem! ;)

Não se esqueça de colocar duas "Choices": Tranferir e Cancelar.

Agora, depois da "Mesage Box", coloque um "Add to Collection" ligado à "Choice" Transferir. Em "Collection", selecione "Baú" e em "Value", copie e cole: "Interface("Baú - Inventário").SelectedField". Note que, na parte sublinhada, está a interface "Baú - Inventário". Certifique-se que você criou uma interface de mesmo nome.

Logo depois, coloque um "Add/Remove Item". Em "character", selecione 'main' e no Item, clique no quadradinho e selecione "Interface" > "Selected Field" e selecione "Baú - Inventário". Por último, em "Number", "Subtract" e "1".


AGORA VAMOS À INTERFACE "BAÚ - BAÚ".

Depois de criar um fundo, assim como na interface anterior, crie um novo field chamado de "item" e, em "Retrieve Text / Value", copie e cole: "Item(Field("this").Name).Name". Em "Spawn Collection", coloque "Baú". "Offset X", ponha "0". "Offeset Y", ponha "32" e em "Columns", deixe "1". (Não é necessário criar um field indicando a quantidade, pois o sistema da Collection não é igual a do inventário. No caso, os ítens iguais vão se repetir na collection).


Você também pode colocar a imagem reduzida do item. Coloque, um pouco próximo do field "item", na mesma "linha" um novo field de nome "imagem". Em "Associate with Field", selecione "item". E em "Retrieve Text / Value", copie e cole: "Item(Field("relate").Name).Graphic". E, em "Width", coloque "32" e em "Height", ponha "32". (Lembre-se: Você põe se quiser. Nesse tutorial, não colocaremos a imagem reduzida!)

                                              

Agora, volte ao "item" e, em "Triggers", clique em "Activated" e clique em "Edite Script".

Coloque uma "Mensage Box" e ponha: Você quer mesmo transferir "\V[Field("this").Name]" para o iventário?. Coloque duas "Choices": Tranferir e Cancelar.

Coloque um "Remove from Collection". Em "Collection", coloque "Baú" e em "Value", copie e cole: "Interface("Baú - Baú").SelectedField". Note que, na parte sublinhada, está a interface "Baú - Baú". Certifique-se que você criou uma interface de mesmo nome.

Depois, coloque um "Add/Remove Item", ligado à "Choice" "Tranferir". Em "Character", ponha 'main'. E, no Item, clique no quadradinho e selecione "Interface" > "Selected Field" > "Baú - Baú". Em "Number", coloque "Add"  e "1".

A parte principal está pronta! Agora vamos criar um sistema para alternar entre as interfaces e, ativar a segunda quando a primeira for iniciada.

Vá em na interface "Baú - Inventário" e clique com o botão direito do mouse e clique em "Properties". Em "Triggers", clique em "Player enters" e clique em "Edite Script".

Coloque um "Turn On/Off Interface" e clique na interface "Baú - Baú". Em "Turn", selecione "On".

Coloque um "Change Color" (Sendo que é para Interfaces). Em "Interfaces", ponha "Baú - Baú". Em "Color", ponha um tom acizentado. E em "Duration", coloque "0,5" segundos.

Coloque um "Change Color" (Sendo que é para Interfaces). Em "Interfaces", ponha "Baú - Inventário". Em "Color", ponha a cor branca. E em "Duration", coloque "0,5" segundos.


Dessa forma, fica visível a interface ativa e a não ativa.

Agora volte a Propriedades da interface "Baú - Inventário" e, em "Triggers", clique em "Player cancels (interface only)" e clique em "Edit Scripts".

Coloque uma "Mesage Box" com um texto como "Ir para..." e com 3 choices: "Baú", "Cancelar" e "SAIR".

Ligado à "Choice" "Baú", coloque um "Change Active Interface" e selecione a interface "Baú - Baú". E em "Curret Active Interface", selecione "Keep".

E, ligado à "Choice" "SAIR", coloque um "Turn On/Off Interface" e selecione as iterfaces "Baú - Inventário" e "Baú - Baú", mantendo pressionada a tecla Ctrl. Em "Turn", selecione "Off".

Em seguida, coloque um "Change Active Interface" e selecione "(None)". Em "Curret Active Interface", selecione "Hide".

E, por último, coloque um "Pause/Resume Game". Em "State", selecione "Resume".


Calma, já estamos acabando!

Vá em na interface "Baú - Baú" e clique com o botão direito do mouse e clique em "Properties". Em "Triggers", clique em "Player enters" e clique em "Edite Script".

Coloque um "Change Color" (Sendo que é para Interfaces). Em "Interfaces", ponha "Baú - Inventário". Em "Color", ponha um tom acizentado. E em "Duration", coloque "0,5" segundos.

Coloque um "Change Color" (Sendo que é para Interfaces). Em "Interfaces", ponha "Baú - Baú". Em "Color", ponha a cor branca. E em "Duration", coloque "0,5" segundos.


Agora volte à Propriedades da interface "Baú - Baú" e, em "Triggers", clique em "Player cancels (interface only)" e clique em "Edit Scripts".


Coloque uma "Mesage Box" com um texto como "Ir para..." e com 3 choices: "Inventário", "Cancelar" e "SAIR".


Ligado à "Choice" "Inventário", coloque um "Change Active Interface" e selecione a interface "Baú - Inventário". E em "Curret Active Interface", selecione "Keep".


E, ligado à "Choice" "SAIR", coloque um "Turn On/Off Interface" e selecione as iterfaces "Baú - Baú" e "Baú - Inventário", mantendo pressionada a tecla Ctrl. Em "Turn", selecione "Off".


Em seguida, coloque um "Change Active Interface" e selecione "(None)". Em "Curret Active Interface", selecione "Hide".


E, por último, coloque um "Pause/Resume Game". Em "State", selecione "Resume".


PRONTO! - Ah, e é claro, perssonalize do jeito que você quiser! =D

NOTA: O POST AINDA NÃO FOI TESTADO, PORTANTO, AO NOTAR ALGUM PROBLEMA, AVISE NA CBOX! OBRIGADO!




Seja o primeiro a comentar

Postar um comentário

Engine 001 Tutoriais ©Template Blogger Green by Dicas Blogger.

TOPO