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

Script da sombra

Iniciado por Hero of Time, 14/04/2014 às 14:51

14/04/2014 às 14:51 Última edição: 14/04/2014 às 15:21 por Hero of Time
Boa tarde galera, hoje eu tava passando pelo fórum e vi um cara pedindo um script de sombra, eu vi a resposta que deixaram lá e resolvi colocar no meu também, o problema é que não manjo NADA de scripts, se alguém puder me ajudar. Eu já coloquei o script e o botão mas não ta rolando, acho que tenho que mudar coisas nas linhas do script, mas se eu fizer isso provavelmente vou estragar.

Script: http://galvs-scripts.com/2013/02/21/character-effects/

Muito obrigado a quem ajudar  :blink:

O script está apontando algum erro ou simplesmente não está a executar?

Não ta executando no meu projeto, por isso acho que tenho que modificar as linhas de script, vai ver ta configurado para funcionar na demo. Teste no seu para ver se da certo.


Ya, funciona.

Com o comando de evento Chamar Script, você deve configurar as opções de sombra (e tudo mais):



char_effects(1, true)
shadow_source(1, 0)
shadow_options(80, 10, 0)


O primeiro ele ativa as sombras para os personagens, sendo 1 a sombra e true se ativará ou não.

Na segundo ele define a fonte da luz para o evento de ID 1, atribuindo um ID para a sombra (no caso 0). Esse ID da sombra é necessário caso você deseje mudar a sombra de posição ou força depois. Note que 0 é apenas um exemplo, poderia ser 24 ou 'Florzinha' (entre aspas ou apóstrofos), que daria o mesmo resultado.

A terceira define as opções da sombra, sendo:


  • 80: A opacidade da sombra quando o personagem está perto da fonte de luz. Se definir como 255, a sombra ficará completamente preta.
  • 10: O quanto a sombra ficará mais fraca a cada tile longe da fonte de luz. Por exemplo, se colocasse 80 aqui, a sombra desapareceria assim que desse um passo para longe da fonte.
  • 0: Se a sombra ondulará ou não (para simular uma chama). Se colocar 1 ou true, ela ondulará. 0 ou false, não.

Basicamente isso. :XD:

Cara eu fiz igual você e não deu certo, eu mudei o 0 para 24 para ver se dava alguma coisa e deu um erro na linha 1409, eu até chequei o script para ver se tava tudo certinho e estava. Pelo que entendi eu devo chamar o script e colocar as coordenadas que você me passou, acontece que elas não tão chamando o script como devia  :rickas:

Há como você colocar como está o seu Chamar Script aqui? :)

Eu simplesmente criei um evento no canto do mapa em processo paralelo, dentro desse evento coloquei um chamar script, e dentro desse comando eu coloquei o que você enviou:
char_effects(1, true)
shadow_source(1, 0)
shadow_options(80, 10, 0)

E o Evento de ID 1, onde está? Se o evento que brilha não for o número 1, tem que especificar o ID dele em:

shadow_source(ID_DO_EVENTO, 0)

O problema é que eu não entendi muito bem o que é esse ID nem como achá-lo... E de que evento está pedindo o ID? do próprio evento do chamar script?

No caso é o evento que emana luz. Sem um evento que emana luz, não há sombra. Você pode verificar o ID do evento na página do evento:



Logo, o evento que seta as variáveis é apenas um controle, você tem que ter um outro evento "físico" que aja como luz. :)

No meu caso seria a Luz do Sol (uma picture) que esta vindo de um evento com o ID: 011, eu coloquei no evento que tem o chamar script assim:
char_effects(1, true)
shadow_source(1, 11)
shadow_options(80, 10, 0)

só que acontece um problema na linha 1409...  Gostaria também de saber se para refletir na água e no espelho muda muita coisa.

No caso, seria:

shadow_source(11, 1)


Sendo 11 o ID do evento e 1 o da sombra. Mas o script não pode dar erro na linha 1409, pois o script só tem 981 linhas.

Para ativar o reflexos e sombra, é só alterar o char_effects:

char_effects(0, 1, true)


Isso ativará o reflexo para os personagens. Para eventos refletirem, deve colocar um comentário escrito <reflect> no evento.

 Acabei de perceber que o erro que ta dando na linha (no outro projeto era 1409 e nesse novo que eu fiz é 1414)
não é no script, e sim no Game_Iterpreter ( já vem junto com o Rpg Maker). Nessa linha diz: eval(script)
Esse erro sempre acontece quando eu coloco um número no lugar da estrela:
shadow_source(11, *)

Há como me passar qual a mensagem do erro?