Aldeia RPG

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Suporte ao desenvolvimento de jogos


+142
steven459
offzinho
xurana321
CaJú
riegel
Kernel
raycostabrito
MokirShabat
Ioriyagami190
kamus9629
Acalantus
bazante
emii41so
jonatas_cg
StormAD
-JohnLennon-
LeonM²
psousa
ElKhadafo
Gumg
Snoopy
marcoabruneriZ
faeltwister
ahiraa
Sonart
Naziozeno
Blue
guideath
CaioAnselmo
Biehnandikki
shoves123
ramoncs13
darkfoligno
rushmima
kike669165
Nextt
Tankevil
KauaiÉMeuNomeDeVerdade
diohellfire
AllyssonRpg
Otávio Grunje
onigoetia
takub088
Geynecmi
EduKrowlley
Gabas
Minos
godzilamaker
folignooo
SunsetHill
Allan443211
Pingo de Leite
ezzcardoso
aeFly
Maximus0037
Lixølas
sufaiterevo
wesleykk
tknooz
Adanrox
4l3ff
IsraTwerknov
DragonicK
zgrise
RD12
GuLabonia
saask
iGhoul
OFWGKTA
StellaS2
Brayan96
yuri.dante
PlayDev
eek
TheJhow
Rayner
Aldimun
Shiy
Edsephiroth
Valentine
Mazxz123
iCoke~
Caio Juan
Zetto
Daniel Carvalho
lupptyr
babugue
koezyrs
Makisso
Crunchbird
eluedes
Pain Correndo
renatokamus
Aither
makergame2000
PoxaFiih
afcbb123
GVS3281
Kenshiro
Flares
Satheios
dpsdenes
Pain
Ps+
kinhoccs
Lief
-Luther
Haseo
Kincy
Dexter
admbaiakme
Paulo Soreto
GallighanMaker
luutr
Azel
Honinbou
sklokize
HarturPl4ys
Trpino
Kuroshi
sam-rtp-rgss
Ruan
wclear
driko
Dreew00
LightOfNyx
jiraya
Takkun
iJackboy
Profane ~
moon.sarito1
Soubi92
DevWithCoffee
snaker15
Fabrizio
whitespirits
Conjurador
Readerusama
Komuro Takashi
Kies
Manticora
Dooolly
146 participantes

    VXA-OS - Crie seu MMO com RPG Maker

    Valentine
    Valentine
    Administrador
    Administrador


    Medalhas : VXA-OS - Crie seu MMO com RPG Maker - Página 51 ZgLkiRU
    Mensagens : 5336
    Créditos : 1163

    VXA-OS - Crie seu MMO com RPG Maker - Página 51 Empty Re: VXA-OS - Crie seu MMO com RPG Maker

    Mensagem por Valentine Dom Mar 15, 2020 2:47 pm

    Adanrox escreveu:Olá Valentine, apenas uma dica que passou despercebido por muito tempo e acredito que muitos irão gostar.

    Ataque básico: Atacar sem a permiçao de usar CTRL ou outra alternativa, na minha opinião a dinâmica de jogabilidade iria mudar um pouco sem o uso do botão de ataque, apenas atacar automaticamente ao selecionar o mobs que deseja, até mesmo interagir com npc usando apenas cliques com o mouse. Portanto assim trazendo uma boa expressão para uso do mouse.
    Pretendo fazer isso futuramente.
    Geynecmi
    Geynecmi
    Novato
    Novato


    Mensagens : 25
    Créditos : 12

    Ficha do personagem
    Nível: 1
    Experiência:
    VXA-OS - Crie seu MMO com RPG Maker - Página 51 Left_bar_bleue0/0VXA-OS - Crie seu MMO com RPG Maker - Página 51 Empty_bar_bleue  (0/0)
    Vida:
    VXA-OS - Crie seu MMO com RPG Maker - Página 51 Left_bar_bleue30/30VXA-OS - Crie seu MMO com RPG Maker - Página 51 Empty_bar_bleue  (30/30)

    VXA-OS - Crie seu MMO com RPG Maker - Página 51 Empty Re: VXA-OS - Crie seu MMO com RPG Maker

    Mensagem por Geynecmi Dom Mar 15, 2020 3:28 pm

    Valentine escreveu:
    Adanrox escreveu:Olá Valentine, apenas uma dica que passou despercebido por muito tempo e acredito que muitos irão gostar.

    Ataque básico: Atacar sem a permiçao de usar CTRL ou outra alternativa, na minha opinião a dinâmica de jogabilidade iria mudar um pouco sem o uso do botão de ataque, apenas atacar automaticamente ao selecionar o mobs que deseja, até mesmo interagir com npc usando apenas cliques com o mouse. Portanto assim trazendo uma boa expressão para uso do mouse.
    Pretendo fazer isso futuramente.

    Hi Valentine, How can ı add a text the amidst? For example; VOCAB or nomal a TEXT  Question 


    VXA-OS - Crie seu MMO com RPG Maker - Página 51 Trade11
    Valentine
    Valentine
    Administrador
    Administrador


    Medalhas : VXA-OS - Crie seu MMO com RPG Maker - Página 51 ZgLkiRU
    Mensagens : 5336
    Créditos : 1163

    VXA-OS - Crie seu MMO com RPG Maker - Página 51 Empty Re: VXA-OS - Crie seu MMO com RPG Maker

    Mensagem por Valentine Dom Mar 15, 2020 4:50 pm

    Correções de bugs da versão 2.0.0:
    Correção de erro no login e registro:
    1) No def handle_login do arquivo handle_data.rb da pasta Scripts do SERVIDOR, procure por:
    Código:
    user = buffer.read_string
    2) Substitua por:
    Código:
    user = buffer.read_string.force_encoding('UTF-8').delete('[/\\\]')
    3) No def handle_new_account, procure por:
    Código:
    user = buffer.read_string.strip
    4) Substitua por:
    Código:
    user = buffer.read_string.strip.force_encoding('UTF-8')

    Correção de erro no nome do evento:
    1) No script [VS] Sprite_Character do CLIENTE, substitua o def refresh_name e o def create_name por:
    Código:
     def refresh_name
        @old_name = @character.actor? ? @character.actor.name : @character.event.name
        @name_sprite ? @name_sprite.bitmap.clear : create_name
        @name_sprite.bitmap.font.color.set(@name_sprite.text_color(name_color))
        @name_sprite.bitmap.draw_text(@name_sprite.bitmap.rect, @old_name.delete('$'), 1)
      end
      
      def create_name
        @name_sprite = Sprite2.new(viewport)
        @name_sprite.bitmap = Bitmap.new(@name_sprite.text_width(@old_name.delete('$')) + 10, 18)
        @name_sprite.ox = @name_sprite.bitmap.width / 2
        @name_sprite.oy = 19
        @name_sprite.z = z + 100
      end

    Erro no nome da guilda corrigido:
    1) No script [VS] Window_Base do CLIENTE, substitua o def update_features por:
    Código:
     def update_features
        update_dragging
        hide_window if Mouse.click?(:L) && in_area?(width - 20, -@title_y, 20, 20) && @closable
        $dragging_window = Mouse.press?(:L) ? in_border_area? && !$dragging_window && self.opacity > 0 && @dragable ? self : $dragging_window : nil
        update_title
        @controls.each(&:update)
      end

    Correção de erro ao equipar:
    1) No script [VS] Sprite_Character do CLIENTE, substitua o def init_sprites por:
    Código:
     def init_sprites
        @damage_duration = 0
        @message_duration = 0
        @paperdoll_sprites = []
        @old_equips = []
        @name_sprite = nil
        @guild_sprite = nil
        @quest_sprite = nil
        @hp_sprite = nil
        @damage_sprite = nil
        @message_sprite = nil
        @old_guild = nil
        @old_hp = nil
        @old_mhp = nil
      end
    2) Substitua o def create_guild_name por:
    Código:
     def guild_changed?
        return true unless @guild_sprite
        return true unless @old_guild == @character.actor.guild
        return false
      end
      
      def refresh_guild_name
        @old_guild = @character.actor.guild
        @guild_sprite ? @guild_sprite.bitmap.clear : create_guild_name
        @guild_sprite.bitmap.draw_text(@guild_sprite.bitmap.rect, "<#{@old_guild}>", 1)
      end
      
      def create_guild_name
        @guild_sprite = Sprite2.new(viewport)
        @guild_sprite.bitmap = Bitmap.new(160, 18)
        @guild_sprite.bitmap.font.color.set(@guild_sprite.text_color(Configs::GUILD_COLOR))
        @guild_sprite.ox = 80
        @guild_sprite.oy = 37
        @guild_sprite.z = z + 100
      end
    3) Substitua o def update_sprites por:
    Código:
     def update_sprites
        return if @character.is_a?(Game_Vehicle) || @character.is_a?(Game_Follower)
        update_paperdolls unless @character.is_a?(Game_Event)
        if @character.actor? && @character.actor.result.hp_damage
          refresh_damage(@character.actor.result.hp_damage, @character.actor.result.mp_damage, @character.actor.result.critical)
          @character.actor.result.hp_damage = nil
          @character.actor.result.mp_damage = 0
          @character.actor.result.critical = false
        end
        # Se é um inimigo, jogador ou evento não apagado (erased)
        if @character.actor? || @character.event.name.start_with?('$') && !@character.character_name.empty?
          refresh_name if name_changed?
          @name_sprite.x = x
          # Atualiza de acordo com a altura do character
          #que pode ter sido alterada
          @name_sprite.y = y - height
        else
          dispose_name
        end
        if !@character.is_a?(Game_Event) && !@character.actor.guild.empty?
          refresh_guild_name if guild_changed?
          @guild_sprite.x = x
          @guild_sprite.y = y - height
        else
          dispose_guild_name
        end
        if @character.is_a?(Game_Event) && @character.quest_not_started?
          create_quest_icon unless @quest_sprite
          @quest_sprite.x = x
          @quest_sprite.y = y - height
        else
          dispose_quest_icon
        end
        if @character.boss?
          refresh_boss_hp_bar if hp_changed?
          # Possibilita que a barra possa ser arrastada
          @hp_sprite.update
        elsif @character.actor? && @character.actor.hp < @character.actor.mhp
          refresh_hp_bar if hp_changed?
          @hp_sprite.x = x
          @hp_sprite.y = y
        else
          dispose_hp_bar
        end
        unless @character.message.empty?
          create_message(@character.message)
          @character.message.clear
        end
        if @damage_duration > 0
          @damage_sprite.x = x
          @damage_sprite.y = y - height + @damage_duration
          @damage_duration -= 1
        else
          dispose_damage
        end
        if @message_duration > 0
          @message_sprite.x = x
          @message_sprite.y = y
          @message_duration -= 1
        else
          dispose_message
        end
      end

    Correção de erro ao escolher o personagem:
    1) No script [VS] Handle_Data do CLIENTE, procure por def handle_player_vitals
    2) Substitua por:
    Código:
      def handle_player_vitals(buffer)
        player_id = buffer.read_short
        hp = buffer.read_int
        mp = buffer.read_int
        if @player_id == player_id
          dif_hp = hp - $game_actors[1].hp
          dif_mp = mp - $game_actors[1].mp
          $game_actors[1].hp = hp
          $game_actors[1].mp = mp
          $game_player.change_damage(dif_hp, dif_mp) unless dif_hp == 0 && dif_mp <= 0
          # Se a conexão estiver muito lenta e o personagem
          #recuperar HP ou MP antes da Scene_Map ser carregada
          if $windows.has_key?(:hud)
            $windows[:hud].refresh
            $windows[:status].refresh if $windows[:status].visible
          end
        else
          $game_map.players[player_id].actor.hp = hp
          $game_map.players[player_id].actor.mp = mp
          $windows[:target_hud].refresh if $game_map.players[player_id] == $game_player.target
        end
      end

    Correção de erro ao selecionar alvo:
    1) No script [VS] Handle_Data do CLIENTE, procure por def handle_player_vitals
    2) substitua por:
    Código:
      def handle_target(buffer)
        target_type = buffer.read_byte
        target_id = buffer.read_short
        $game_player.target = target_type == Constants::TARGET_PLAYER ? $game_map.players[target_id] :$game_map.events[target_id]
        # Se o inimigo não é um boss, que já tem uma HUD
        #própria fixada no centro da tela
        $windows[:target_hud].visible = ($game_player.target != nil && $game_player.target.actor? && !$game_player.target.boss?)
        $windows[:target_hud].refresh if $windows[:target_hud].visible
      end

    Correção de erro ao ativar a tela cheia:
    1) Substitua o script [VS] Audio do CLIENTE por:
    Código:
    #==============================================================================
    # ** Audio
    #------------------------------------------------------------------------------
    #  Este script lida com o volume das músicas e sons.
    #------------------------------------------------------------------------------
    #  Autor: Valentine
    #==============================================================================

    module Audio
     
      @music_volume = 100
      @sound_volume = 100
      @resolution_id = 0
      @fullscreen = 1
     
      def self.load
        return unless FileTest.exist?('System/Audio.rvdata2')
        file = File.open('System/Audio.rvdata2', 'rb')
        @music_volume = Marshal.load(file)
        @sound_volume = Marshal.load(file)
        @resolution_id = Marshal.load(file)
        @fullscreen = Marshal.load(file)
        file.close
      end
     
      def self.save
        file = File.open('System/Audio.rvdata2', 'wb')
        file.write(Marshal.dump(@music_volume))
        file.write(Marshal.dump(@sound_volume))
        file.write(Marshal.dump(@resolution_id))
        file.write(Marshal.dump(@fullscreen))
        file.close
      end
     
      def self.music_volume=(volume)
        @music_volume = volume
        update_bgm_volume
      end
     
      def self.sound_volume=(volume)
        @sound_volume = volume
        update_bgs_volume
      end
     
      def self.resolution_id=(resolution_id)
        @resolution_id = resolution_id
      end
     
      def self.fullscreen=(fullscreen)
        @fullscreen = fullscreen
        Graphics.toggle_fullscreen if fullscreen == 0 && !Graphics.is_fullscreen? || fullscreen == 1 && Graphics.is_fullscreen?
      end
     
      class << self
       
        alias vxaos_bgm_play bgm_play
        alias vxaos_bgm_stop bgm_stop
        alias vxaos_bgs_play bgs_play
        alias vxaos_bgs_stop bgs_stop
        alias vxaos_me_play me_play
        alias vxaos_se_play se_play
       
        attr_reader  :music_volume, :sound_volume, :resolution_id, :fullscreen
       
        def update_bgm_volume
          return unless @bgm_filename
          bgm_play(@bgm_filename, @bgm_volume, @bgm_pitch)
        end
       
        def update_bgs_volume
          return unless @bgs_filename
          bgs_play(@bgs_filename, @bgs_volume, @bgs_pitch)
        end
       
        def bgm_play(filename, volume = 100, pitch = 100, pos = 0)
          @bgm_filename = filename
          @bgm_volume = volume
          @bgm_pitch = pitch
          volume = @music_volume * volume / 100
          vxaos_bgm_play(filename, volume, pitch, pos)
        end
       
        def bgm_stop
          @bgm_filename = nil
          vxaos_bgm_stop
        end
       
        def bgs_play(filename, volume = 100, pitch = 100, pos = 0)
          @bgs_filename = filename
          @bgs_volume = volume
          @bgs_pitch = pitch
          volume = @sound_volume * volume / 100
          vxaos_bgs_play(filename, volume, pitch, pos)
        end
       
        def bgs_stop
          @bgs_filename = nil
          vxaos_bgs_stop
        end
       
        def me_play(filename, volume = 100, pitch = 100)
          volume = @music_volume * volume / 100
          vxaos_me_play(filename, volume, pitch)
        end
       
        def se_play(filename, volume = 100, pitch = 100)
          volume = @sound_volume * volume / 100
          vxaos_se_play(filename, volume, pitch)
        end
       
      end
     
    end

    Audio.load
    Graphics.resize_screen(Configs::RESOLUTIONS[Audio.resolution_id][0], Configs::RESOLUTIONS[Audio.resolution_id][1])
    # Se o cliente utiliza DirectX 9 e a tela cheia está ativada
    Graphics.toggle_fullscreen if Graphics.respond_to?('toggle_fullscreen') && Audio.fullscreen == 0

    Todas essas correções estarão na versão 2.0.1 que será lançada em breve.
    Geynecmi
    Geynecmi
    Novato
    Novato


    Mensagens : 25
    Créditos : 12

    Ficha do personagem
    Nível: 1
    Experiência:
    VXA-OS - Crie seu MMO com RPG Maker - Página 51 Left_bar_bleue0/0VXA-OS - Crie seu MMO com RPG Maker - Página 51 Empty_bar_bleue  (0/0)
    Vida:
    VXA-OS - Crie seu MMO com RPG Maker - Página 51 Left_bar_bleue30/30VXA-OS - Crie seu MMO com RPG Maker - Página 51 Empty_bar_bleue  (30/30)

    VXA-OS - Crie seu MMO com RPG Maker - Página 51 Empty Re: VXA-OS - Crie seu MMO com RPG Maker

    Mensagem por Geynecmi Seg Mar 16, 2020 1:35 am

    sevgililer günü escreveu:
    Sürüm 2.0.0 için hata düzeltmeleri :
    Giriş ve kayıt sırasında hata düzeltme:
    1) SERVER Scripts klasöründeki handle_data.rb dosyasının handle_login def dosyasında şunlara bakın: 2) Şununla değiştir: 3) Def handle_new_account'ta şunu arayın: 4) Şununla değiştir:
    Código:
    user = buffer.read_string

    Código:
    user = buffer.read_string.force_encoding('UTF-8').delete('[/\\\]')

    Código:
    user = buffer.read_string.strip

    Código:
    user = buffer.read_string.strip.force_encoding('UTF-8')

    Olay adında hata düzeltme:
    1) MÜŞTERİ'nin [VS] Sprite_Character betiğinde def refresh_name ve def create_name yerine şunu yazın:
    Código:
     def refresh_name
        @old_name = @character.actor? ? @character.actor.name : @character.event.name
        @name_sprite ? @name_sprite.bitmap.clear : create_name
        @name_sprite.bitmap.font.color.set(@name_sprite.text_color(name_color))
        @name_sprite.bitmap.draw_text(@name_sprite.bitmap.rect, @old_name.delete('$'), 1)
      end
      
      def create_name
        @name_sprite = Sprite2.new(viewport)
        @name_sprite.bitmap = Bitmap.new(@name_sprite.text_width(@old_name.delete('$')) + 10, 18)
        @name_sprite.ox = @name_sprite.bitmap.width / 2
        @name_sprite.oy = 19
        @name_sprite.z = z + 100
      end

    Lonca adı hatası düzeltildi:
    1) MÜŞTERİ'nin [VS] Window_Base komut dosyasında def update_features yerine şunu yazın:
    Código:
     def update_features
        update_dragging
        hide_window if Mouse.click?(:L) && in_area?(width - 20, -@title_y, 20, 20) && @closable
        $dragging_window = Mouse.press?(:L) ? in_border_area? && !$dragging_window && self.opacity > 0 && @dragable ? self : $dragging_window : nil
        update_title
        @controls.each(&:update)
      end

    Donatırken hata düzeltme:
    1) MÜŞTERİ'nin [VS] Sprite_Character betiğinde def init_sprites ile değiştirin : 2) def create_guild_name ile değiştirin : 3) def update_sprites ile değiştirin :
    Código:
     def init_sprites
        @damage_duration = 0
        @message_duration = 0
        @paperdoll_sprites = []
        @old_equips = []
        @name_sprite = nil
        @guild_sprite = nil
        @quest_sprite = nil
        @hp_sprite = nil
        @damage_sprite = nil
        @message_sprite = nil
        @old_guild = nil
        @old_hp = nil
        @old_mhp = nil
      end

    Código:
     def guild_changed?
        return true unless @guild_sprite
        return true unless @old_guild == @character.actor.guild
        return false
      end
      
      def refresh_guild_name
        @old_guild = @character.actor.guild
        @guild_sprite ? @guild_sprite.bitmap.clear : create_guild_name
        @guild_sprite.bitmap.draw_text(@guild_sprite.bitmap.rect, "<#{@old_guild}>", 1)
      end
      
      def create_guild_name
        @guild_sprite = Sprite2.new(viewport)
        @guild_sprite.bitmap = Bitmap.new(160, 18)
        @guild_sprite.bitmap.font.color.set(@guild_sprite.text_color(Configs::GUILD_COLOR))
        @guild_sprite.ox = 80
        @guild_sprite.oy = 37
        @guild_sprite.z = z + 100
      end

    Código:
     def update_sprites
        return if @character.is_a?(Game_Vehicle) || @character.is_a?(Game_Follower)
        update_paperdolls unless @character.is_a?(Game_Event)
        if @character.actor? && @character.actor.result.hp_damage
          refresh_damage(@character.actor.result.hp_damage, @character.actor.result.mp_damage, @character.actor.result.critical)
          @character.actor.result.hp_damage = nil
          @character.actor.result.mp_damage = 0
          @character.actor.result.critical = false
        end
        # Se é um inimigo, jogador ou evento não apagado (erased)
        if @character.actor? || @character.event.name.start_with?('$') && !@character.character_name.empty?
          refresh_name if name_changed?
          @name_sprite.x = x
          # Atualiza de acordo com a altura do character
          #que pode ter sido alterada
          @name_sprite.y = y - height
        else
          dispose_name
        end
        if !@character.is_a?(Game_Event) && !@character.actor.guild.empty?
          refresh_guild_name if guild_changed?
          @guild_sprite.x = x
          @guild_sprite.y = y - height
        else
          dispose_guild_name
        end
        if @character.is_a?(Game_Event) && @character.quest_not_started?
          create_quest_icon unless @quest_sprite
          @quest_sprite.x = x
          @quest_sprite.y = y - height
        else
          dispose_quest_icon
        end
        if @character.boss?
          refresh_boss_hp_bar if hp_changed?
          # Possibilita que a barra possa ser arrastada
          @hp_sprite.update
        elsif @character.actor? && @character.actor.hp < @character.actor.mhp
          refresh_hp_bar if hp_changed?
          @hp_sprite.x = x
          @hp_sprite.y = y
        else
          dispose_hp_bar
        end
        unless @character.message.empty?
          create_message(@character.message)
          @character.message.clear
        end
        if @damage_duration > 0
          @damage_sprite.x = x
          @damage_sprite.y = y - height + @damage_duration
          @damage_duration -= 1
        else
          dispose_damage
        end
        if @message_duration > 0
          @message_sprite.x = x
          @message_sprite.y = y
          @message_duration -= 1
        else
          dispose_message
        end
      end

    Karakteri seçerken hata düzeltme:
    1) MÜŞTERİ'nin [VS] Handle_Data betiğinde def handle_player_vitals öğesini arayın
    2) Şununla değiştir:
    Código:
      def handle_player_vitals(buffer)
        player_id = buffer.read_short
        hp = buffer.read_int
        mp = buffer.read_int
        if @player_id == player_id
          dif_hp = hp - $game_actors[1].hp
          dif_mp = mp - $game_actors[1].mp
          $game_actors[1].hp = hp
          $game_actors[1].mp = mp
          $game_player.change_damage(dif_hp, dif_mp) unless dif_hp == 0 && dif_mp <= 0
          # Se a conexão estiver muito lenta e o personagem
          #recuperar HP ou MP antes da Scene_Map ser carregada
          if $windows.has_key?(:hud)
            $windows[:hud].refresh
            $windows[:status].refresh if $windows[:status].visible
          end
        else
          $game_map.players[player_id].actor.hp = hp
          $game_map.players[player_id].actor.mp = mp
          $windows[:target_hud].refresh if $game_map.players[player_id] == $game_player.target
        end
      end

    Hedef seçerken hata düzeltme:
    1) MÜŞTERİ'nin [VS] Handle_Data betiğinde def handle_player_vitals
    2) ifadesini arayın.
    Código:
      def handle_target(buffer)
        target_type = buffer.read_byte
        target_id = buffer.read_short
        $game_player.target = target_type == Constants::TARGET_PLAYER ? $game_map.players[target_id] :$game_map.events[target_id]
        # Se o inimigo não é um boss, que já tem uma HUD
        #própria fixada no centro da tela
        $windows[:target_hud].visible = ($game_player.target != nil && $game_player.target.actor? && !$game_player.target.boss?)
        $windows[:target_hud].refresh if $windows[:target_hud].visible
      end

    Tam ekranı etkinleştirirken hata düzeltme:
    1) MÜŞTERİ'nin [VS] Ses komut dosyasını değiştirin : Bu düzeltmelerin tümü yakında çıkacak olan 2.0.1 sürümünde olacaktır.
    Código:
    #==============================================================================
    # ** Audio
    #------------------------------------------------------------------------------
    #  Este script lida com o volume das músicas e sons.
    #------------------------------------------------------------------------------
    #  Autor: Valentine
    #==============================================================================

    module Audio
      
      @music_volume = 100
      @sound_volume = 100
      @resolution_id = 0
      @fullscreen = 1
      
      def self.load
        return unless FileTest.exist?('System/Audio.rvdata2')
        file = File.open('System/Audio.rvdata2', 'rb')
        @music_volume = Marshal.load(file)
        @sound_volume = Marshal.load(file)
        @resolution_id = Marshal.load(file)
        @fullscreen = Marshal.load(file)
        file.close
      end
      
      def self.save
        file = File.open('System/Audio.rvdata2', 'wb')
        file.write(Marshal.dump(@music_volume))
        file.write(Marshal.dump(@sound_volume))
        file.write(Marshal.dump(@resolution_id))
        file.write(Marshal.dump(@fullscreen))
        file.close
      end
      
      def self.music_volume=(volume)
        @music_volume = volume
        update_bgm_volume
      end
      
      def self.sound_volume=(volume)
        @sound_volume = volume
        update_bgs_volume
      end
      
      def self.resolution_id=(resolution_id)
        @resolution_id = resolution_id
      end
      
      def self.fullscreen=(fullscreen)
        @fullscreen = fullscreen
        Graphics.toggle_fullscreen if fullscreen == 0 && !Graphics.is_fullscreen? || fullscreen == 1 && Graphics.is_fullscreen?
      end
      
      class << self
        
        alias vxaos_bgm_play bgm_play
        alias vxaos_bgm_stop bgm_stop
        alias vxaos_bgs_play bgs_play
        alias vxaos_bgs_stop bgs_stop
        alias vxaos_me_play me_play
        alias vxaos_se_play se_play
        
        attr_reader   :music_volume, :sound_volume, :resolution_id, :fullscreen
        
        def update_bgm_volume
          return unless @bgm_filename
          bgm_play(@bgm_filename, @bgm_volume, @bgm_pitch)
        end
        
        def update_bgs_volume
          return unless @bgs_filename
          bgs_play(@bgs_filename, @bgs_volume, @bgs_pitch)
        end
        
        def bgm_play(filename, volume = 100, pitch = 100, pos = 0)
          @bgm_filename = filename
          @bgm_volume = volume
          @bgm_pitch = pitch
          volume = @music_volume * volume / 100
          vxaos_bgm_play(filename, volume, pitch, pos)
        end
        
        def bgm_stop
          @bgm_filename = nil
          vxaos_bgm_stop
        end
        
        def bgs_play(filename, volume = 100, pitch = 100, pos = 0)
          @bgs_filename = filename
          @bgs_volume = volume
          @bgs_pitch = pitch
          volume = @sound_volume * volume / 100
          vxaos_bgs_play(filename, volume, pitch, pos)
        end
        
        def bgs_stop
          @bgs_filename = nil
          vxaos_bgs_stop
        end
        
        def me_play(filename, volume = 100, pitch = 100)
          volume = @music_volume * volume / 100
          vxaos_me_play(filename, volume, pitch)
        end
        
        def se_play(filename, volume = 100, pitch = 100)
          volume = @sound_volume * volume / 100
          vxaos_se_play(filename, volume, pitch)
        end
        
      end
      
    end

    Audio.load
    Graphics.resize_screen(Configs::RESOLUTIONS[Audio.resolution_id][0], Configs::RESOLUTIONS[Audio.resolution_id][1])
    # Se o cliente utiliza DirectX 9 e a tela cheia está ativada
    Graphics.toggle_fullscreen if Graphics.respond_to?('toggle_fullscreen') && Audio.fullscreen == 0

    Valantine , how can ı add a text the amidst?


    https://servimg.com/view/20174200/3
    Valentine
    Valentine
    Administrador
    Administrador


    Medalhas : VXA-OS - Crie seu MMO com RPG Maker - Página 51 ZgLkiRU
    Mensagens : 5336
    Créditos : 1163

    VXA-OS - Crie seu MMO com RPG Maker - Página 51 Empty Re: VXA-OS - Crie seu MMO com RPG Maker

    Mensagem por Valentine Seg Mar 16, 2020 1:16 pm

    Geynecmi escreveu:Valantine , how can ı add a text the amidst?


    https://servimg.com/view/20174200/3
    In the [VS] Window_Selectable script.
    Geynecmi
    Geynecmi
    Novato
    Novato


    Mensagens : 25
    Créditos : 12

    Ficha do personagem
    Nível: 1
    Experiência:
    VXA-OS - Crie seu MMO com RPG Maker - Página 51 Left_bar_bleue0/0VXA-OS - Crie seu MMO com RPG Maker - Página 51 Empty_bar_bleue  (0/0)
    Vida:
    VXA-OS - Crie seu MMO com RPG Maker - Página 51 Left_bar_bleue30/30VXA-OS - Crie seu MMO com RPG Maker - Página 51 Empty_bar_bleue  (30/30)

    VXA-OS - Crie seu MMO com RPG Maker - Página 51 Empty Re: VXA-OS - Crie seu MMO com RPG Maker

    Mensagem por Geynecmi Seg Mar 16, 2020 2:05 pm

    Valentine escreveu:
    Geynecmi escreveu:Valantine , how can ı add a text the amidst?


    https://servimg.com/view/20174200/3
    In the [VS] Window_Selectable script.

    For example how can ı make?
    Geynecmi
    Geynecmi
    Novato
    Novato


    Mensagens : 25
    Créditos : 12

    Ficha do personagem
    Nível: 1
    Experiência:
    VXA-OS - Crie seu MMO com RPG Maker - Página 51 Left_bar_bleue0/0VXA-OS - Crie seu MMO com RPG Maker - Página 51 Empty_bar_bleue  (0/0)
    Vida:
    VXA-OS - Crie seu MMO com RPG Maker - Página 51 Left_bar_bleue30/30VXA-OS - Crie seu MMO com RPG Maker - Página 51 Empty_bar_bleue  (30/30)

    VXA-OS - Crie seu MMO com RPG Maker - Página 51 Empty Re: VXA-OS - Crie seu MMO com RPG Maker

    Mensagem por Geynecmi Seg Mar 16, 2020 5:52 pm

    Valentine escreveu:
    Geynecmi escreveu:Valantine , how can ı add a text the amidst?


    https://servimg.com/view/20174200/3
    In the [VS] Window_Selectable script.



    Why ı can't use conditional branch with shop processing?
    avatar
    takub088
    Iniciante
    Iniciante


    Mensagens : 41
    Créditos : 0

    VXA-OS - Crie seu MMO com RPG Maker - Página 51 Empty Re: VXA-OS - Crie seu MMO com RPG Maker

    Mensagem por takub088 Ter Mar 17, 2020 10:22 am

    VXA-OS - Crie seu MMO com RPG Maker - Página 51 LHVDFxP

    Como posso editar o canal de bate-papo em tailandês? Obrigada
    Valentine
    Valentine
    Administrador
    Administrador


    Medalhas : VXA-OS - Crie seu MMO com RPG Maker - Página 51 ZgLkiRU
    Mensagens : 5336
    Créditos : 1163

    VXA-OS - Crie seu MMO com RPG Maker - Página 51 Empty Re: VXA-OS - Crie seu MMO com RPG Maker

    Mensagem por Valentine Ter Mar 17, 2020 11:05 pm

    takub088 escreveu:VXA-OS - Crie seu MMO com RPG Maker - Página 51 LHVDFxP

    Como posso editar o canal de bate-papo em tailandês? Obrigada
    Script Vocab.
    avatar
    takub088
    Iniciante
    Iniciante


    Mensagens : 41
    Créditos : 0

    VXA-OS - Crie seu MMO com RPG Maker - Página 51 Empty Re: VXA-OS - Crie seu MMO com RPG Maker

    Mensagem por takub088 Qua Mar 18, 2020 2:56 am

    Valentine escreveu:
    takub088 escreveu:VXA-OS - Crie seu MMO com RPG Maker - Página 51 LHVDFxP

    Como posso editar o canal de bate-papo em tailandês? Obrigada
    Script Vocab.

    #textbox

    Não consigo digitar tailandês na caixa de texto.
    Só consigo digitar em inglês.

    UTF-8

    Conteúdo patrocinado


    VXA-OS - Crie seu MMO com RPG Maker - Página 51 Empty Re: VXA-OS - Crie seu MMO com RPG Maker

    Mensagem por Conteúdo patrocinado


      Data/hora atual: Sex Abr 19, 2024 3:06 pm