RPG maker VX


Unirse al foro, es rápido y fácil

RPG maker VX
RPG maker VX
¿Quieres reaccionar a este mensaje? Regístrate en el foro con unos pocos clics o inicia sesión para continuar.
Últimos temas
» Script de menu
por maxi Jue 04 Dic 2014, 1:44 pm

» Ayuda intro animado!!!
por maxi Miér 03 Dic 2014, 9:41 pm

» ayuda con este engin
por maxi Miér 03 Dic 2014, 8:42 am

» Hud de Vida 100% Personalizable - Engine Sencillo! Sin Scripts :)
por davidaikago Jue 20 Nov 2014, 10:58 am

» Ultimate parallax control by:GDS [ace]
por arellano Miér 08 Oct 2014, 8:28 pm

» Script Touhou (animated) Map name (v1.4)
por davidaikago Miér 08 Oct 2014, 2:09 pm

» tutorial puerta nueva
por davidaikago Miér 08 Oct 2014, 9:08 am

» cámara de fotos
por davidaikago Miér 08 Oct 2014, 9:05 am

» Imperial Action System II Demo
por davidaikago Miér 08 Oct 2014, 8:47 am

» VE Batalla animada [ACE]
por FhierusIV Jue 18 Sep 2014, 10:57 am

» Nuevo Reglamento del Foro [Vigente desde Septiembre 2014]
por maxi Miér 17 Sep 2014, 8:37 am

» MOG|Animated Title
por Souta21 Mar 09 Sep 2014, 7:24 pm

» Tutorial Engine - Cambiar Character al Equipar Objeto
por maxi Lun 21 Jul 2014, 10:19 am

» Script de climas
por gambasoxd Sáb 19 Jul 2014, 8:58 am

» Script de contraseña(codigo) para abrir un cofre
por rpgame Jue 03 Jul 2014, 6:03 pm

¿Quién está en línea?
En total hay 2 usuarios en línea: 0 Registrados, 0 Ocultos y 2 Invitados

Ninguno

[ Ver toda la lista ]


El record de usuarios en línea fue de 117 durante el Mar 09 Ago 2011, 3:39 pm

Tienda interactiva

+4
Awimura666
maxi
allmaxi09
emiliovirtual
8 participantes

Ir abajo

Tienda interactiva Empty Tienda interactiva

Mensaje por emiliovirtual Vie 13 Mayo 2011, 9:43 am

Me he propuesto una cosa, postear un script raro o alucinante diario asi que os traigo el segundo de, espero, una larga lista...
Este script me llamo la atencion porque es un script con el que hacer una tienda interactiva, es decir, que tu cojas los objetos de las mesas, luego ir a la caja y pagar...
Nota: los nombres de arriba de los objetos es otro script... tambien incluido que permite poner los nombres encima de los eventos poniendo [n] antes del nombre...

Autor: Hideo

Traducido: emiliovirtual OOK

Código:

#====================================(¯¯¯¯)====================================#
#                                Dynamic Shop                                #
#====================================(____)====================================#
#Hideo    •
#24/03/10 •
#1.0      •
#••••••••••
#(¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯)
#(                            Como Usar                          )
#(  Para adicionar um item à lista de compras, use o comando em  )
#(  chamar script: -comprar_item(id_do_item,quantidade)          )
#(                  -comprar_arma(id_da_arma,quantidade)          )
#(                  -comprar_armadura(id_da_armadura,quantidade)  )
#(  Para zerar a lista de compras, use o comando em chamar script:)
#(  limpar_loja                                                  )
#(  Para mostrar a janela do caixa, onde é possível ver os itens  )
#(  da compra e finaliza-lá use o comando em chamar script:      )
#(    chamar_caixa                                                )
#(  Para mudar a taxa e o desconto a serem cobrados, use o comando)
#(    mudar_taxa(taxa) ou mudar_dexconto(desconto)                )
#(    obs.: o desconto e a taxa devem ser cobrados em porcentagem )
#'¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯'


module Shop_Config
  module Vocab
    BuyButton = "comprar"
    BuyDesc = "Finaliza a compra"
   
    ShopValue = "Valor da Compra"
    TaxValue = "Valor das Taxas"
    TotalValue = "Valor Total"
  end
end

class Shop
  attr_reader :itens
  attr_reader :tax
  attr_reader :off
  def initialize
    @itens = {}
    for i in $data_items
      @itens[i] = 0
    end
    for i in $data_weapons
      @itens[i] = 0
    end
    for i in $data_armors
      @itens[i] = 0
    end

    @itens.delete(nil)
    @tax = 0
    @off = 0
  end
  def add_item(item,qtd)
    if item != nil
      if @itens[item] + qtd <= 99 and @itens[item] + qtd >= 0 and
        $game_party.item_number(item.id) + @itens[item] + qtd <= 99 and
        $game_party.item_number(item.id) + @itens[item] + qtd >= 0
        @itens[item] += qtd
      else
        Sound.play_buzzer
      end
    end
  end
 
  def remove_item(item,qtd)
    add_item(item,-qtd)
  end
 
  def clear_item(item)
    @itens[item] = 0
  end
 
  def set_tax(tax)
    @tax = tax
  end
 
  def set_off(off)
    @off = off
  end
 
  def price
    price = 0
    for i in @itens.keys
      price += i.price*@itens[i]
    end
    return price
  end
 
  def taxoff
    percent = @tax-@off
    return (price*percent)/100
  end
 
  def totalprice
    return price+taxoff
  end
 
  def buy
    final = totalprice
   
    if $game_party.gold - final >= 0
      for i in @itens.keys
        $game_party.gain_item(i,@itens[i])
      end
      $game_party.lose_gold(final)
      for i in $data_items
        @itens[i] = 0
      end
      @itens.delete(nil)
      Sound.play_decision
    else
      Sound.play_buzzer
    end
  end
end
class Game_Party
  attr_accessor :shop
  alias shop_initialize initialize
  def initialize
    shop_initialize
    @shop = Shop.new
  end
end

class Window_Shop_Item < Window_Selectable
  def initialize(x, y, width, height)
    super(x, y, width, height)
    @column_max = 1
    self.index = 0
    refresh
  end
 
  def item
    return @data[self.index]
  end
 
  def refresh
    @data = []
    for item in $game_party.shop.itens.keys
      next if $game_party.shop.itens[item] == 0
      @data.push(item)
      if item.is_a?(RPG::Item) and item.id == $game_party.last_item_id
        self.index = @data.size - 1
      end
    end
    @item_max = @data.size+1
    create_contents
    for i in 0...@item_max
      draw_item(i)
    end
    draw_buy_item
  end
 
  def draw_buy_item
    rect = item_rect(@data.size)
    self.contents.clear_rect(rect)
    rect.width -= 4
    self.contents.draw_text(rect,Shop_Config::Vocab::BuyButton,1)
  end
 
  def draw_item(index)
    rect = item_rect(index)
    self.contents.clear_rect(rect)
    item = @data[index]
    if item != nil
      number = $game_party.shop.itens[item]
      price = item.price*number
      rect.width -= 70
      draw_item_name(item, rect.x ,rect.y, true)
      rect.width += 66
      self.contents.draw_text(rect, sprintf("x %2d:%3d", number,price)+Vocab::gold, 2)
    end
  end
 
  def update_help
    @help_window.set_text(item == nil ? "" : item.description)
    if @index == @item_max-1
      @help_window.set_text(Shop_Config::Vocab::BuyDesc)
    end
  end
end


#==============================================================================
# Scene_Item
#------------------------------------------------------------------------------
# Classe de operações na tela de items.
#==============================================================================

class Scene_Shop_Item < Scene_Base
  #--------------------------------------------------------------------------
  # Inicialização do processo
  #--------------------------------------------------------------------------
  def start
    super
    create_menu_background
    @viewport = Viewport.new(0, 0, 544, 416)
    @help_window = Window_Help.new
    @help_window.viewport = @viewport
    @item_window = Window_Shop_Item.new(0, 56, 544/2+16, 360)
    @item_window.viewport = @viewport
    @item_window.help_window = @help_window
    @shop_calc = Window_Shop_Calc.new
    @item_window.active = true
    @gold_window = Window_Gold.new(544-160,416-56)
  end
  #--------------------------------------------------------------------------
  # Fim do processo
  #--------------------------------------------------------------------------
  def terminate
    super
    dispose_menu_background
    @gold_window.dispose
    @viewport.dispose
    @shop_calc.dispose
    @help_window.dispose
    @item_window.dispose
  end
  #--------------------------------------------------------------------------
  # Retornar à tela original
  #--------------------------------------------------------------------------
  def return_scene
    $scene = Scene_Map.new
  end
  #--------------------------------------------------------------------------
  # Atualização da tela
  #--------------------------------------------------------------------------
  def update
    super
    update_menu_background
    @help_window.update
    @shop_calc.refresh
    @item_window.update
    update_item_selection
    @gold_window.refresh
  end
  #--------------------------------------------------------------------------
  # Atualização da seleção de items
  #--------------------------------------------------------------------------
  def update_item_selection
    if Input.trigger?(Input::B)
      Sound.play_cancel
      return_scene
    elsif Input.trigger?(Input::C)
      if @item_window.index == @item_window.item_max-1
        @item_window.index = 0
        $game_party.shop.buy
      else
        @item = @item_window.item
        $game_party.shop.remove_item(@item,1)
      end
      @item_window.refresh
    end
  end
end
class Window_Shop_Calc < Window_Base
  def initialize
    super(288,56,256,128)
    refresh
  end
  def refresh
    self.contents.clear
    self.contents.font.size = 14
    line1rect = Rect.new(0,WLH*0,224,WLH)
    line2rect = Rect.new(0,WLH*1,224,WLH)
    line3rect = Rect.new(0,WLH*2,224,WLH)
    line4rect = Rect.new(0,WLH*3,224,WLH)
    self.contents.draw_text(line1rect,Shop_Config::Vocab::ShopValue,0)
    self.contents.draw_text(line2rect,Shop_Config::Vocab::TaxValue+sprintf("(%02d",
                            $game_party.shop.tax-$game_party.shop.off)+"%)",0)
    self.contents.draw_text(line3rect,"_______________________________________________",0)
    self.contents.draw_text(line4rect,Shop_Config::Vocab::TotalValue,0)
    self.contents.draw_text(line1rect,sprintf("%03d",$game_party.shop.price)+Vocab::gold,2)
    self.contents.draw_text(line2rect,sprintf("%03d",$game_party.shop.taxoff)+Vocab::gold,2)
    if $game_party.shop.totalprice > $game_party.gold
      self.contents.font.color = Color.new(255,0,0)
    end
    self.contents.draw_text(line4rect,sprintf("%03d",$game_party.shop.totalprice)+Vocab::gold,2)
    self.contents.font.color = Color.new(255,255,255)
  end
end
class Game_Interpreter
  def comprar_item(id,qtd)
    $game_party.shop.add_item($data_items[id],qtd)
  end
  def comprar_arma(id,qtd)
    $game_party.shop.add_item($data_weapons[id],qtd)
  end
  def comprar_armadura(id,qtd)
    $game_party.shop.add_item($data_armors[id],qtd)
  end
  def limpar_loja
    for i in $data_items
      $game_party.shop.clear_item(i)
    end
    for i in $data_armors
      $game_party.shop.clear_item(i)
    end
    for i in $data_weapons
      $game_party.shop.clear_item(i)
    end
  end
  def abrir_caixa
    $scene = Scene_Shop_Item.new
  end
  def mudar_taxa(taxa)
    $game_party.shop.set_tax(taxa)
  end
  def mudar_desconto(desc)
    $game_party.shop.set_off(desc)
  end
end


DEMO:
[Tienes que estar registrado y conectado para ver este vínculo] OOK
LINK resubido... En la demo primero coges los objetos de las mesas. Despues te vas al niño y le pides el descuento y finalmente te vas al anciano y el te abre la tienda donde pagas...


Última edición por emiliovirtual el Dom 15 Mayo 2011, 3:25 am, editado 2 veces
emiliovirtual
emiliovirtual
50
50

Masculino

Edad 53

Cantidad de envíos 102

Maker Cash 152

Reputación 33


Volver arriba Ir abajo

Tienda interactiva Empty Re: Tienda interactiva

Mensaje por allmaxi09 Vie 13 Mayo 2011, 11:18 am

parece lindo! ninguna screem hermano?
allmaxi09
allmaxi09
130
130

Masculino

Edad 34

Cantidad de envíos 184

Maker Cash 215

Reputación 2


Extras
Sobre mí::

Volver arriba Ir abajo

Tienda interactiva Empty Re: Tienda interactiva

Mensaje por maxi Vie 13 Mayo 2011, 12:24 pm

Los 2 Maxis decimos lo mismo, Parece Lindo, y Ojala sea como creo q es ;D, +1 Garantizado. :D
maxi
maxi
Moderador
Moderador

Masculino

Edad 28

Cantidad de envíos 908

Maker Cash 1673

Reputación 156


Extras
Sobre mí:: ¿Necesitas Una Mano en el Maker VX o VX ACE? ¡Ponte en Contacto Conmigo! :)

Volver arriba Ir abajo

Tienda interactiva Empty Re: Tienda interactiva

Mensaje por Awimura666 Vie 13 Mayo 2011, 12:35 pm

buen script! nisiquiera en pokemon puedo hacer eso, ¿algun screen? cheers cheers +1
Awimura666
Awimura666
30
30

Masculino

Edad 35

Cantidad de envíos 47

Maker Cash 44

Reputación 0


Extras
Sobre mí::

Volver arriba Ir abajo

Tienda interactiva Empty Re: Tienda interactiva

Mensaje por ronalelmenol Vie 13 Mayo 2011, 12:47 pm

Esta muy bueno ese scrip +1
ronalelmenol
ronalelmenol
130
130

Masculino

Edad 29

Cantidad de envíos 187

Maker Cash 221

Reputación 39


Extras
Sobre mí:: Me encanta el Anime y los RPG`S. PD: Dominio Total del mundo.

Volver arriba Ir abajo

Tienda interactiva Empty Re: Tienda interactiva

Mensaje por Borre Vie 13 Mayo 2011, 1:54 pm

Pues yo tengo un problema, no me coge los objetos, compre las 3 cosas y hasta hable con el chaval que te da descuento y el anciano que es para poner tu nombre, pero luego miro en la mochila en los objetos y no salen.

Es eso normal?
Borre
Borre
500
500

Masculino

Edad 38

Cantidad de envíos 1660

Maker Cash 1362

Reputación 41


Extras
Sobre mí::

Volver arriba Ir abajo

Tienda interactiva Empty Re: Tienda interactiva

Mensaje por emiliovirtual Vie 13 Mayo 2011, 1:58 pm

haber la demo tiene algun bug... si no hablas con el hombre por la parte de la mesa donde el está te saldra lo del nombre y lo de que no coge los objetos es que lo he hecho para que puedas coger mas de uno pero no lo obtienes en la mochila hasta que no lo pagas hablando con el anciano desde la parte de la mesa donde el mira....
LOL
emiliovirtual
emiliovirtual
50
50

Masculino

Edad 53

Cantidad de envíos 102

Maker Cash 152

Reputación 33


Volver arriba Ir abajo

Tienda interactiva Empty Re: Tienda interactiva

Mensaje por emiliovirtual Vie 13 Mayo 2011, 1:59 pm

en la proxima screens lo prometo... :xDD:
emiliovirtual
emiliovirtual
50
50

Masculino

Edad 53

Cantidad de envíos 102

Maker Cash 152

Reputación 33


Volver arriba Ir abajo

Tienda interactiva Empty Re: Tienda interactiva

Mensaje por cleofas2 Vie 13 Mayo 2011, 6:20 pm

explicame como usar el demo no puedo comprar el niño ni hace nada cuando hablo con el y el anciano solo me pide que ponga mi nombre

ayudaaaaaaaaaaa
cleofas2
cleofas2
50
50

Masculino

Edad 38

Cantidad de envíos 52

Maker Cash 51

Reputación 0


Volver arriba Ir abajo

Tienda interactiva Empty Re: Tienda interactiva

Mensaje por emiliovirtual Sáb 14 Mayo 2011, 9:53 am

repito lo de la demo tiene algun buc pero el script funciona xD T_T
emiliovirtual
emiliovirtual
50
50

Masculino

Edad 53

Cantidad de envíos 102

Maker Cash 152

Reputación 33


Volver arriba Ir abajo

Tienda interactiva Empty Re: Tienda interactiva

Mensaje por cleofas2 Sáb 14 Mayo 2011, 4:30 pm

puta madre pero explicate como hacerlo funcionar ya lo copie en un nuevo proyecto y nada sigue sin hacer nada copie el script y utilize los mismos a comandos para mandar llamar el script chingaoo :-S
cleofas2
cleofas2
50
50

Masculino

Edad 38

Cantidad de envíos 52

Maker Cash 51

Reputación 0


Volver arriba Ir abajo

Tienda interactiva Empty Re: Tienda interactiva

Mensaje por Borre Sáb 14 Mayo 2011, 4:57 pm

Antes que nada, emilio no hagas doblepost para anunciar de poner scrips, sabias que se pueden editar los mensajes?

Despues decir, que cleofas no insultes, leete las normas, que para algo estan.

Tercero, me pasa lo mismo y no me funciona [Tienes que estar registrado y conectado para ver esa imagen]

Voy a desahogarme [Tienes que estar registrado y conectado para ver esa imagen]
Borre
Borre
500
500

Masculino

Edad 38

Cantidad de envíos 1660

Maker Cash 1362

Reputación 41


Extras
Sobre mí::

Volver arriba Ir abajo

Tienda interactiva Empty Re: Tienda interactiva

Mensaje por cleofas2 Sáb 14 Mayo 2011, 10:38 pm

Borre escribió:Antes que nada, emilio no hagas doblepost para anunciar de poner scrips, sabias que se pueden editar los mensajes?

Despues decir, que cleofas no insultes, leete las normas, que para algo estan.

Tercero, me pasa lo mismo y no me funciona [Tienes que estar registrado y conectado para ver esa imagen]

Voy a desahogarme [Tienes que estar registrado y conectado para ver esa imagen]

Perdon amigo esque si me altere un poco porq el script se me hace muy bueno y no lo hecho jalar y el emilio dice que tiene bug y que no se que tanto pero no explica nada se me hace que solo baja demos y ni las prueba
cleofas2
cleofas2
50
50

Masculino

Edad 38

Cantidad de envíos 52

Maker Cash 51

Reputación 0


Volver arriba Ir abajo

Tienda interactiva Empty Re: Tienda interactiva

Mensaje por emiliovirtual Dom 15 Mayo 2011, 3:22 am

bueno... para que ya no halla mas qujas cambio y resubo el link...
emiliovirtual
emiliovirtual
50
50

Masculino

Edad 53

Cantidad de envíos 102

Maker Cash 152

Reputación 33


Volver arriba Ir abajo

Tienda interactiva Empty Re: Tienda interactiva

Mensaje por cleofas2 Dom 15 Mayo 2011, 12:17 pm

ahora si es todo! chingon el script lo incluyo en mi proyecto
cleofas2
cleofas2
50
50

Masculino

Edad 38

Cantidad de envíos 52

Maker Cash 51

Reputación 0


Volver arriba Ir abajo

Tienda interactiva Empty Re: Tienda interactiva

Mensaje por emiliovirtual Dom 15 Mayo 2011, 1:59 pm

me alegro de resolver las dudas del script... OOK
emiliovirtual
emiliovirtual
50
50

Masculino

Edad 53

Cantidad de envíos 102

Maker Cash 152

Reputación 33


Volver arriba Ir abajo

Tienda interactiva Empty Re: Tienda interactiva

Mensaje por emiliovirtual Lun 16 Mayo 2011, 1:44 pm

una cosa, lo de las demos... yo lo que hago es buscar scripts con y sin demo... si lleva demo la rehago yo mismo y si no tambien con eso quiero decir que el 100% de las demos de los scripts estan hechas por mi hasta el momento con la exepcion del inventario de mu online que esa si que no es mia ya que al yo no traducir el script decidi mejor dejar la demo tal y como estaba...
eso es todo, para servirles: emiliovirtual OOK
salu2
emiliovirtual
emiliovirtual
50
50

Masculino

Edad 53

Cantidad de envíos 102

Maker Cash 152

Reputación 33


Volver arriba Ir abajo

Tienda interactiva Empty Re: Tienda interactiva

Mensaje por Clound Sáb 11 Jun 2011, 11:51 pm

exelente post te devo el +1 eh, se me afigura al Zelda Minish Cap xD esta genial y me servira para juegos estilo zelda ^^.
Clound
Clound
500
500

Masculino

Edad 27

Cantidad de envíos 512

Maker Cash 480

Reputación 39


Extras
Sobre mí::

Volver arriba Ir abajo

Tienda interactiva Empty Re: Tienda interactiva

Mensaje por Contenido patrocinado


Contenido patrocinado


Volver arriba Ir abajo

Volver arriba

- Temas similares

 
Permisos de este foro:
No puedes responder a temas en este foro.