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

Name plus system

Iniciado por Joguistas, 28/05/2013 às 22:54

28/05/2013 às 22:54 Última edição: 28/05/2013 às 23:01 por Joguistas
Name plus system

Compativel com: RMVXA
Compatibilidade: boa
Facilidade de uso: fácil
Lag gerado:baixo

[box class=titlebg]
Condições de Uso
[/box]
Caso queira postar em outra comunidade ou usar em seu
jogo pode so que tem que dar os creditos a mim por fazer o script

[box class=titlebg]
Para que serve o script
[/box]
Mostra nomes em cima de eventos.


[box class=titlebg]
Como usar
[/box]
Crie um comentario com cada um dos comandos abaixo

  • name.text (na parte text  o que quer que apareça escrito)
  • font."Text" (Dentro das aspas na parte text escreva o nome da fonte)
  • size.14 (no 14 coloque o tamanho do texto escrito)
  • cor.Color.new(255,255,255) (entre () escreva a cor que quer para o texto)
  • bold.true ou false (Negrito true para ficar negrito e false para não ficar em negrito)
  • italic.true ou false(Mesmo esquema do negrito)

[box class=titlebg]
Download e Script
[/box]

Obs: não e obrigatorio colocar um comentario com cada um dos comandos caso não coloque ele chama o padrão,não mecha no script.

[box class=titlebg]
Créditos e Avisos
[/box]
Khas: pelas aulas dele me ajudou muito
Gab!: por me ajudar a arrumar um bug

Bem vamos, eu achei bem interessante você ter colocado outros efeitos como cores, etc.
Mas o script não é usável, e muito menos funcional.

Nenhuma das informações passadas funciona, tentei colocar com letra maior, tudo etc, e nada mudou.
E ainda ocorreram dois bug's.

Spoiler

A palavra não fica em cima do evento, olha lá no canto superior esquerdo.


Ao tentar ir para outro mapa... dá este error.
[close]
Bom espero que concerte, ou algum scripter apareça para lhe ajudar, até^^
  

28/05/2013 às 23:39 #2 Última edição: 29/05/2013 às 00:10 por Joguistas
@felipefalcon: então como fez o evento que era para ter  o texto? sobre os bugs vou consertar.
Edit:
consertei os bugs por menos acho que sim não deu aqui e sobre usar o script vou deixar a screenshot de como deve ficar.
como deve ficar o evento
[close]
como fica em jogo
[close]

Criei um evento, e nele coloquei o comentário.

name.aqui

Aquela mulherzinha ali.
Então simplesmente ta lá em cima, e a mulher esta naquela posição mesmo.

E ali tem um teletransporte que dá no mapa de cima.
No caso se eu for, dá este outro erro alí.

Edit:Envie uma PM pro Raizen, acho que ele pode te ajudar^^
  

@felipefalcon:então cara testei arrumei os bugs que deu aqui e so recopiar o script da paste bin e olhe
o meu edit avise se erros persistirem.

Agora ficou estranho corrigiu o da posição mas apareceu outro.

Aqui não apareceu mensagem nenhuma em cima do evento, pois estava com o evento do teletransporte no mapa.
Quando eu exclui este evento do teletransporte, a palavra apareceu...assim deduzo eu, que só pode ter 1 evento por mapa.(O bug do teletransporte persiste)

Caso você coloca mensagem em dois eventos distintos, só a mensagem de um deles aparece e.e

Bem, melhor pedir ajuda mesmo...
  

Ok, vamos lá, o script tá todo bugado, feio e porco.
Sei que você deve estar todo empolgado pra expor suas conquistas no aprendizado de RGSS, mas tem que realmente aprender primeiro, senão guarde para si até você ter mais experiencia e você mesmo vai ver o quanto está ruim. Mas se tu quer aprender vou te passar umas dicas de como melhorar seu script.

1°: Cuide sempre da indentação do código, mesmo tendo experiencia levei um tempo para corrigir a indentação do código para finalmente conseguir ler o código e analisar para te passar as dicas seguintes.

2°: Não é necessário chamar o método create_names em outro lugar que não seja dentro do initilize pois o objeto não precisa ser criado mais de umas vez. No seu caso além de você chamar no initialize, estava sendo chamado dentro do update, ou seja criando nomes a cada frame, isso não é nada sábio, reduzindo a performance de seu script muito.

3°: Não precisa usar um for para cada condição, coloque todas as condições dentro de um único iterador, uma após a outra e coloque para criar o nome na Array @names dentro do primeiro for, depois de checar todas as strings, senão você cria nomes duas vezes.

4°: Eu até agora não entendi suas condições dentro da classe Sprite_Name, nem sei como isso não deu erro  :pare:
Como você está criando valores padrão para cada atributo caso sejam nulos (nil), o que é uma excelente prática, você pode usar as seguintes sintaxes:

self.bitmap.font.bold = bold.nil? ? false : bold

Tradução:

bold da font = se bold é nil (?) retorna false, senão(:) retorna valor passado no argumento bold.

ou a versão mais simples

    if bold.nil?
      self.bitmap.font.bold = false
    else
      self.bitmap.font.bold = bold
    end


Tem como usar o unless também, mas não é muito recomendado e cedo ou tarde se tu continuar lendo tutoriais tu vai aprender sobre ele.
Espero que essas dicas lhe sejam úteis, espero que também corrija seu código porque tá ruinzinho.  :ok:

@SheolShade:Muito obrigado pelo comentario e pelas dicas vou pedir para um
moderador trancar o topico e vou dar uma melhorada no script e quando estiver
normal vou pedir para destrancar o topico.

Tópico trancado a pedido do membro Joguistas, este poderá ser destrancado caso o membro peça para algum membro da staff, obrigado.
To Die Is To Find Out If Humanity Ever Conquers Death