[DÚVIDA] Em relação ao Telam Ludus 1.6.2 RC2 Hitskin_logo Hitskin.com

Isto é uma pré-visualização de um tema em Hitskin.com
Instalar o temaVoltar para a ficha do tema

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

[DÚVIDA] Em relação ao Telam Ludus 1.6.2 RC2

3 participantes

Ir para baixo

[DÚVIDA] Em relação ao Telam Ludus 1.6.2 RC2 Empty [DÚVIDA] Em relação ao Telam Ludus 1.6.2 RC2

Mensagem por Tylamel Qua Nov 05, 2014 9:45 pm

baixei o Telam Ludus 1.6.2 RC2 para criar um MMO para mim, acontece qe diferente das versões antigas, o 1.6.2 quando você clica com o Mouse o personagem não anda, somente se você mover ele com as direcionais do teclado, queria saber se isso é um bug do telam ludus qe baixei ou é de qualquer Telam Ludus, e se possível, queria que me falassem como resolver isso! Pois nn quero criar um MMO qe mova o personagem pelas direcionais do teclado, quero mover ele com o mouse Neutral
Tylamel
Tylamel
Novato
Novato

Mensagens : 3
Créditos : 0

Ir para o topo Ir para baixo

[DÚVIDA] Em relação ao Telam Ludus 1.6.2 RC2 Empty Re: [DÚVIDA] Em relação ao Telam Ludus 1.6.2 RC2

Mensagem por Komuro Takashi Qui Nov 06, 2014 4:45 am

No Telan 1.6.2 tem essa função? Achei q era só no vampyr netgame....estude os scrpita de mouse e spritsetmap que talvez possa ter a resposta ou poste ali o telam que move com o mouse q vejo pra VC.

_________________
[DÚVIDA] Em relação ao Telam Ludus 1.6.2 RC2 Takashi_komuro_by_minato8-d51g9o4

Paga um café? Patreon
Komuro Takashi
Komuro Takashi
Colaborador
Colaborador

Mensagens : 1047
Créditos : 130

Ir para o topo Ir para baixo

[DÚVIDA] Em relação ao Telam Ludus 1.6.2 RC2 Empty Re: [DÚVIDA] Em relação ao Telam Ludus 1.6.2 RC2

Mensagem por Tylamel Qui Nov 06, 2014 11:34 am

Aí está o script do Telam Ludus 1.6.2 :
Código:
#==============================================================================
# Mouse Module
#==============================================================================
module Mouse
  
  GetCursorPos = Win32API.new("user32", "GetCursorPos", "p", "i")
  ScreenToClient = Win32API.new("user32", "ScreenToClient", "lp", "i")
  GetClientRect = Win32API.new("user32", "GetClientRect", "lp", "i")
  GetPrivateString = Win32API.new("kernel32", "GetPrivateProfileStringA", "pppplp", "l")
  FindWindow = Win32API.new("user32", "FindWindowA", "pp", "l")
  
  def self.global_pos
    pos = [0, 0].pack("ll")
    return (GetCursorPos.call(pos) != 0 ? pos.unpack("ll") : nil)
  end
  
  def self.pos
    x, y = self.screen_to_client(*self.global_pos)
    width, height = self.client_size
    if x == nil and y == nil; return -32, -32
    elsif x.between?(0, width) and y.between?(0, height); return x, y
    else; return -32, -32
    end
  end
  
  def self.screen_to_client(x, y)
    return nil unless (x and y)
    pos = [x, y].pack("ll")
    return (ScreenToClient.call(hwnd, pos) != 0 ? pos.unpack("ll") : nil)
  end
  
  def self.hwnd
    game_name = "\0" * 256
    GetPrivateString.call("Game"," Title", "", game_name, 255, ".\\Game.ini")
    game_name.delete!("\0")
    return FindWindow.call("RGSS Player", game_name)
  end
  
  def self.client_size
    rect = [0, 0, 0, 0].pack("l4")
    GetClientRect.call(hwnd, rect)
    right, bottom = rect.unpack("l4")[2..3]
    return right, bottom
  end
  
end

#------------------------------------------------------------------------------
class Game_Mouse
  
  attr_reader :x
  attr_reader :y
  attr_reader :object
  attr_accessor :parent
  
  def initialize
    @x = 0
    @y = 0
    @z = 9999
    @sprite = Sprite.new
    @objspt = Sprite.new
    @sprite.z = @z
    @objspt.z = @sprite.z-1
    @sprite.bitmap = Bitmap.new(32, 32)
    @objspt.bitmap = Bitmap.new(24, 24)
    @cursor = 0
    @wait = 0
    @object = nil
    @parent = nil
    refresh
    update
  end
  
  def update
    @x, @y = Mouse.pos
    @sprite.x, @sprite.y = @x, @y
    @objspt.x, @objspt.y = @x, @y
    @objspt.ox, @objspt.oy = 12, 12
    update_drag
  end
  
  def update_drag
    unless Input.press?(Keys::MOUSEL) and @object != nil
      @wait += 1
      if @wait >= 10
        @object = nil
        refresh
        @wait = 0
      end
    end
  end
  
  def cursor=(c)
    @cursor = c
    refresh
  end
  
  def object=(o)
    @object = o
    refresh
  end
  
  def refresh
    @objspt.bitmap.clear
    if @object != nil
      icon = Cache.system("Iconset")
      rect = Rect.new(@object.icon_index % 16 * 24, @object.icon_index / 16 * 24, 24, 24)
      @objspt.bitmap.blt(0, 0, icon, rect)
    end
    @sprite.bitmap.clear
    graphic = Cache.system("Cursors")
    rect = Rect.new(@cursor % 3 * 32, @cursor / 3 * 32, 32, 32)
    @sprite.bitmap.blt(0, 0, graphic, rect)
  end
  
  def tile
    x = ($game_map.display_x / 256) + (@x / 32)
    y = ($game_map.display_y / 256) + (@y / 32)
    return x, y
  end
  
  def in_area?(x, y, w=32, h=32)
    return true if @x.between?(x, x+w) and @y.between?(y, y+h)
    return false
  end
  
  def over?(*obj)
    if obj[0].is_a?(Game_Character)
      x = obj[0].x; y = obj[0].y
    else
      x = obj[0]; y = obj[1]
    end
    return true if tile[0] == x and tile[1] == y
    return false
  end
  
  def over_window?(window=nil)
    if window != nil and !window.disposed?
      return true if in_area?(window.x, window.y, window.width, window.height)
    else
      for w in $windows
        next if w.disposed?
        if w.is_a?(Sprite) and in_area?(w.x-16, w.y-16, w.bitmap.width+16, w.bitmap.height+16)
          return true
        elsif w.is_a?(Window_Chat) and w.visible and in_area?(w.x-16, w.y-48, w.width+16, w.height+48)
          return true
        elsif w.visible and in_area?(w.x-16, w.y-16, w.width+16, w.height+16)
          return true
        end
      end
    end
    return false
  end
  
  def left_click(*obj)
    if obj[0].is_a?(Game_Character)
      x = obj[0].x; y = obj[0].y
    else
      x = obj[0]; x = obj[1]
    end
    return true if over?(x, y) and Input.trigger?(Keys::MOUSEL)
    return false
  end
  
  def right_click(*obj)
    if obj[0].is_a?(Game_Character)
      x = obj[0].x; y = obj[0].y
    else
      x = obj[0]; x = obj[1]
    end
    return true if over?(x, y) and Input.trigger?(Keys::MOUSER)
    return false
  end
  
end

#------------------------------------------------------------------------------
Win32API.new("user32", "ShowCursor", "i", "i").call(0)

$mouse = Game_Mouse.new
Tylamel
Tylamel
Novato
Novato

Mensagens : 3
Créditos : 0

Ir para o topo Ir para baixo

[DÚVIDA] Em relação ao Telam Ludus 1.6.2 RC2 Empty Re: [DÚVIDA] Em relação ao Telam Ludus 1.6.2 RC2

Mensagem por Felix Blayder Qui Nov 06, 2014 6:48 pm

Se não me engano, o Vlad removeu esse sistema por achar que estava falho, e iria adiciona-lo mais tarde em outras versões.

_________________

Se inscreva em meu Canal no YouTube:
https://www.youtube.com/localnerd

Faça uma doação para ajudar nos custos:

https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=3N8T2RJ977RCQ

Felix Blayder
Felix Blayder
Membro de Honra
Membro de Honra

Mensagens : 1406
Créditos : 220

Ficha do personagem
Nível: 1
Experiência:
[DÚVIDA] Em relação ao Telam Ludus 1.6.2 RC2 Left_bar_bleue0/0[DÚVIDA] Em relação ao Telam Ludus 1.6.2 RC2 Empty_bar_bleue  (0/0)
Vida:
[DÚVIDA] Em relação ao Telam Ludus 1.6.2 RC2 Left_bar_bleue30/30[DÚVIDA] Em relação ao Telam Ludus 1.6.2 RC2 Empty_bar_bleue  (30/30)

Ir para o topo Ir para baixo

[DÚVIDA] Em relação ao Telam Ludus 1.6.2 RC2 Empty Re: [DÚVIDA] Em relação ao Telam Ludus 1.6.2 RC2

Mensagem por Komuro Takashi Sex Nov 07, 2014 7:01 am

Pelo que analisei o script de Mouse não é pois está idêntico ao da versão R bom deve estar no SpritsetMap então.Os scripts responsáveis são o def title do mouse
O follow da scène base e um se não me engano chamado fiding path no game player ou e spritesetmap

_________________
[DÚVIDA] Em relação ao Telam Ludus 1.6.2 RC2 Takashi_komuro_by_minato8-d51g9o4

Paga um café? Patreon
Komuro Takashi
Komuro Takashi
Colaborador
Colaborador

Mensagens : 1047
Créditos : 130

Ir para o topo Ir para baixo

[DÚVIDA] Em relação ao Telam Ludus 1.6.2 RC2 Empty Re: [DÚVIDA] Em relação ao Telam Ludus 1.6.2 RC2

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


Ir para o topo Ir para baixo

Ir para o topo

- Tópicos semelhantes

 
Permissões neste sub-fórum
Não podes responder a tópicos