O TEMA DO FÓRUM ESTÁ EM MANUTENÇÃO. FEEDBACKS AQUI: ACESSAR

Como fazer um sistema liga-desliga para lanternas e habilidades em 8 passos

Iniciado por Mr.Necklaces, 03/01/2017 às 18:45

Olá tudo bem? Mr.Necklaces na área. Meu primeiro tutorial, desculpem por algum erro. Sejam pacientes comigo.  :ok:
Esse sistema que eu fiz foi especialmente para o script  Awesome Light Effects feito pelo Khas, em uma determinada parte do meu jogo precisei ligar uma lanterna e então criei esse sisteminha. Mas pode ser usado em outros projetos. Sem mais delongas, vamos lá!  :XD:
Necessário para quem quiser fazer com o script do Khas.

-Script do Khas: [button]http://forums.rpgmakerweb.com/index.php?/topic/4917-khas-awesome-light-effects/[/button]

-Gráfico do seu personagem com e sem a lanterna (Na pasta do Khas têm um exemplo($char_lantern))
Spoiler
Meu gráfico:
http://prntscr.com/dr4dok
[close]

TUTORIAL
1º Vá no seu jogo: Ferramentas -> Base de Dados -> Eventos Comuns

2º Crie um novo evento nomeando, definindo como início de processo paralelo, tendo como condição uma switch chamada "ON"(Deve criar um evento automático no início do jogo deixando essa switch LIGADA)

3º Agora faça um item chamado lanterna para ativar a próxima condição, caso você queira bateiras também, crie esse item, agora ponha uma condição dentro da outra, sem exceção.

Imagem:
Spoiler

4º Agora crie uma nova condição e uma switch chamada "Ligada"(quando o jogo iniciar deixe DESLIGADA)

5º Crie duas condições com essa switch, uma em que ela tem de estar ligada e outra desligada, com exceção.

Imagem:
Spoiler

6º Agora ponha dentro deles uma nova condição, nelas o usuário deve pressionar um botão do teclado pra isso, sem exceção, você pode escolher um dos pré-selecionados ou usar um script especial para isso.
(A autoria é desconhecida).

Script:
Spoiler
#================================================= =================
#Como usar:
#Vá nos eventos, faça uma condição, vá na 4º Aba e
#selecione "Script", na barrinha à direita escreva isso:
#Kboard.keyboard($R_Key_Tecla), subistitua Tecla por uma letra,
#por exemplo: S, vai ficar assim: Kboard.keyboard($R_Key_S)
#================================================= =================
module Kboard
#--------------------------------------------------------------------------
$RMouse_BUTTON_L = 0x01 # botão esquerdo do mouse
$RMouse_BUTTON_R = 0x02 # botão direito do mouse
$RMouse_BUTTON_M = 0x04 # botão do meio do mouse
$RMouse_BUTTON_4 = 0x05 # 4th mouse button only for logitech mouse (MX900)
$RMouse_BUTTON_5 = 0x06 # 5th mouse button only for logitech mouse (MX900)
$R_Key_BACK = 0x08 # BACKSPACE
$R_Key_TAB = 0x09 # TAB
$R_Key_RETURN = 0x0D # ENTER
$R_Key_SHIFT = 0x10 # SHIFT
$R_Key_PAUSE = 0x13 # PAUSE
$R_Key_CAPITAL = 0x14 # CAPS LOCK
$R_Key_ESCAPE = 0x1B # ESC
$R_Key_SPACE = 0x20 # ESPAÇO
$R_Key_PRIOR = 0x21 # PAGE UP
$R_Key_NEXT = 0x22 # PAGE DOWN
$R_Key_END = 0x23 # END
$R_Key_HOME = 0x24 # HOME
$R_Key_LEFT = 0x25 # SETA ESQUERDA
$R_Key_UP = 0x26 # SETA PRA CIMA
$R_Key_RIGHT = 0x27 # SETA DIREITA
$R_Key_DOWN = 0x28 # SETA PRA BAIXO
$R_Key_SELECT = 0x29 # SELECT
$R_Key_PRINT = 0x2A # PRINT
$R_Key_SNAPSHOT = 0x2C # PRINT SCREEN
$R_Key_INSERT = 0x2D # INSERT
$R_Key_DELETE = 0x2E # DELETE
$R_Key_0 = 0x30 # 0
$R_Key_1 = 0x31 # 1
$R_Key_2 = 0x32 # 2
$R_Key_3 = 0x33 # 3
$R_Key_4 = 0x34 # 4
$R_Key_5 = 0x35 # 5
$R_Key_6 = 0x36 # 6
$R_Key_7 = 0x37 # 7
$R_Key_8 = 0x38 # 8
$R_Key_9 = 0x39 # 9
$R_Key_A = 0x41 # A
$R_Key_B = 0x42 # B
$R_Key_C = 0x43 # C
$R_Key_D = 0x44 # D
$R_Key_E = 0x45 # E
$R_Key_F = 0x46 # F
$R_Key_G = 0x47 # G
$R_Key_H = 0x48 # H
$R_Key_I = 0x49 # I
$R_Key_J = 0x4A # J
$R_Key_K = 0x4B # K
$R_Key_L = 0x4C # L
$R_Key_M = 0x4D # M
$R_Key_N = 0x4E # N
$R_Key_O = 0x4F # O
$R_Key_P = 0x50 # P
$R_Key_Q = 0x51 # Q
$R_Key_R = 0x52 # R
$R_Key_S = 0x53 # S
$R_Key_T = 0x54 # T
$R_Key_U = 0x55 # U
$R_Key_V = 0x56 # V
$R_Key_W = 0x57 # W
$R_Key_X = 0x58 # X
$R_Key_Y = 0x59 # Y
$R_Key_Z = 0x5A # Z
$R_Key_LWIN = 0x5B # Janelinha Esquerda (Microsoft Natural keyboard)
$R_Key_RWIN = 0x5C # Janelinha Direita (Natural keyboard)
$R_Key_APPS = 0x5D # Tecla de Lista (Natural keyboard)
$R_Key_NUMPAD0 = 0x60 # Teclado Numérico 0
$R_Key_NUMPAD1 = 0x61 # Teclado Numérico 1
$R_Key_NUMPAD2 = 0x62 # Teclado Numérico 2
$R_Key_NUMPAD3 = 0x63 # Teclado Numérico 3
$R_Key_NUMPAD4 = 0x64 # Teclado Numérico 4
$R_Key_NUMPAD5 = 0x65 # Teclado Numérico 5
$R_Key_NUMPAD6 = 0x66 # Teclado Numérico 6
$R_Key_NUMPAD7 = 0x67 # Teclado Numérico 7
$R_Key_NUMPAD8 = 0x68 # Teclado Numérico 8
$R_Key_NUMPAD9 = 0x69 # Teclado Numérico 9
$R_Key_MULTIPLY = 0x6A # Asterisco (*)
$R_Key_ADD = 0x6B # Sinal Positivo (+)
$R_Key_SEPARATOR = 0x6C # Separator key
$R_Key_SUBTRACT = 0x6D # Sinal Negativo (-)
$R_Key_DECIMAL = 0x6E # Decimal key
$R_Key_DIVIDE = 0x6F # Tecla de dividir (/)
$R_Key_F1 = 0x70 # F1
$R_Key_F2 = 0x71 # F2
$R_Key_F3 = 0x72 # F3
$R_Key_F4 = 0x73 # F4
$R_Key_F5 = 0x74 # F5
$R_Key_F6 = 0x75 # F6
$R_Key_F7 = 0x76 # F7
$R_Key_F8 = 0x77 # F8
$R_Key_F9 = 0x78 # F9
$R_Key_F10 = 0x79 # F10
$R_Key_F11 = 0x7A # F11
$R_Key_F12 = 0x7B # F12
$R_Key_NUMLOCK = 0x90 # NUM LOCK
$R_Key_SCROLL = 0x91 # SCROLL LOCK
$R_Key_LSHIFT = 0xA0 # SHIFT ESQUERDO
$R_Key_RSHIFT = 0xA1 # SHIFT DIREITO
$R_Key_LCONTROL = 0xA2 # CTRL ESQUERDO
$R_Key_RCONTROL = 0xA3 # CTRL DIREITO
$R_Key_L_ALT = 0xA4 # ALT ESQUERDO
$R_Key_R_ALT = 0xA5 # ALT DIREITO
GetKeyState = Win32API.new("user32","GetAsyncKeyState",['i'],'i')
#--------------------------------------------------------------------------
module_function
#--------------------------------------------------------------------------
def keyboard(rkey)
GetKeyState.call(rkey) & 0x01 == 1 # key 0
end
end
[close]

Imagem:
Spoiler

7º Dentro deles você pode por o que liga e desliga a lanterna ou a habilidade que você criou. por exemplo, no que necessita "Ligada" em OFF, ponha o que ativa o evento e no outro o que desativa.

Imagem:
Spoiler

8º Por fim, insira abaixo dos eventos uma mudança na switch "Ligada". Por exemplo: No que ativa o evento ponha ela em OFF e a que desativa ponha em ON.

Imagem (Finalizado(Lanterna)):
Spoiler

Imagem(Finalizado(Exemplo(Aumentar velocidade))):
Spoiler


Espero que tenham gostado do tutorial, qualquer informação errada que eu tenha passado, por favor me corrija. Qualquer dúvida pode mandar. Mas por favor, não ressuscite tópicos mortos, entre em contato diretamente comigo.