Conectarse

Recuperar mi contraseña

Buscar
 
 

Resultados por:
 


Rechercher Búsqueda avanzada

Últimos temas
» Engine Día, Atardecer, Noche y Clima
por Carlosjavierr Vie Sep 10, 2010 11:08 am

» Engine Armas y Hechizos
por Carlosjavierr Vie Sep 10, 2010 11:08 am

» Engine Busca Tesoros ( Detector de Metales )
por Carlosjavierr Vie Sep 10, 2010 11:07 am

» Engine sentarse VX ( y recuperas vida )
por Carlosjavierr Vie Sep 10, 2010 11:07 am

» Engine Sentarse ( y recuperas vida ) Nueva version
por Carlosjavierr Vie Sep 10, 2010 11:07 am

» Nueva version de mi engine pet!!! 1.01
por Carlosjavierr Vie Sep 10, 2010 11:06 am

» Engine Compra de Habilidades
por Carlosjavierr Vie Sep 10, 2010 11:06 am

Mejores posteadores
Carlosjavierr (71)
 
555Goku5551 (46)
 
wachuflame2 (4)
 
Kailcor (3)
 

¿Quién está en línea?
En total hay 1 usuario en línea: 0 Registrados, 0 Ocultos y 1 Invitado

Ninguno

[ Ver toda la lista ]


La mayor cantidad de usuarios en línea fue 10 el Dom Jul 05, 2015 4:15 am.
Afiliados
Maker Palace
True Role Dreams
Visitas


Script Recolectar

Ver el tema anterior Ver el tema siguiente Ir abajo

Script Recolectar

Mensaje  Carlosjavierr el Vie Feb 05, 2010 7:52 pm

Descripción:

Este script te permite cavar la tierra para conseguir ciertas hierbas cultivadas.

Recursos Necesarios:

Spoiler:
Necesitas todo esto en la carpeta Icons:

-> Con nombre: below
-> Con nombre: DDirt
-> Con nombre: Dirt
-> Con nombre: left
-> Con nombre: Right
-> Con nombre: aboves

script:

Añade este script arriva de main :

Spoiler:
# Scene_Herb
#------------------------------------------------------------------------------
# The scene with herbalism
#==============================================================================

class Scene_Herb
#--------------------------------------------------------------------------
# Initialize
#--------------------------------------------------------------------------
def initialize(plant_id, time = 8, size = 7, amount = 1)
@plant_id = plant_id
@time = time
@size = size
@size = 13 if @size > 13
@size = 1 if @size < 1
@amount = amount
@amount = 1 if @amount < 1
end
#--------------------------------------------------------------------------
# Main
#--------------------------------------------------------------------------
def main
@plant_window = Window_Plant.new(@plant_id, @time, @size, @amount)
while @plant_window.rm
@plant_window.dispose
@plant_window = Window_Plant.new(@plant_id, @time, @size, @amount)
end
@time_window = Window_Help.new
@plant_window.time_window = @time_window
Graphics.transition
loop do
Graphics.update
Input.update
update
if $scene != self
break
end
end
Graphics.freeze
@plant_window.dispose
@time_window.dispose
end
#--------------------------------------------------------------------------
# Update
#--------------------------------------------------------------------------
def update
if !@plant_window.done
@plant_window.update
@time_window.update
else
if Input.trigger?(Input::C)
$scene = Scene_Map.new
end
end
if Input.trigger?(Input::B)
$game_system.se_play($data_system.cancel_se)
$scene = Scene_Map.new
end
end
end

y este tambien arriva de main :

Spoiler:
#==============================================================================
# Window_Plant
#------------------------------------------------------------------------------
# The Window with the plant in it
#==============================================================================

class Window_Plant < Window_Base
attr_reader :done
attr_reader :rm
attr_accessor :time_window
#--------------------------------------------------------------------------
# Initialize
#--------------------------------------------------------------------------
def initialize(plant_id, time, size, amount)
super(112, 64, 416, 416)
self.contents = Bitmap.new(width - 32, height - 32)
@amount = amount
@rm = false
@x = 0
@y = -1
@time = time * 40
@id = plant_id
@name = $data_items[plant_id].name
@stuff = []
for x in 0..15
@stuff.push([])
for y in 0..14
@stuff[x][y] = 1
end
end
cx = rand(2) + 7
pbs = []
lastm = 0
for y in 0..size
@stuff[cx][y] = 2
case rand(lastm)
when 4, 6, 8, 10, 12, 14, 16, 18
if rand(3) > 0
cx += 1
@stuff[cx][y] = 2
lastm = 0
end
if rand(3) > 0 and y < 12
@stuff[cx + 1][y] = 2
@stuff[cx + 2][y] = 2
@stuff[cx + 2][y + 1] = 2
@stuff[cx + 2][y + 2] = 2
pbs.push([cx + 2, y + 1, 0])
lastm = 0
end
when 5, 7, 9, 11, 13, 15, 17, 19
if rand(3) > 0
cx -= 1
@stuff[cx][y] = 2
lastm = 0
end
if rand(3) > 0 and y < 12
@stuff[cx - 1][y] = 2
@stuff[cx - 2][y] = 2
@stuff[cx - 2][y + 1] = 2
@stuff[cx - 2][y + 2] = 2
pbs.push([cx - 2, y + 1, 1])
lastm = 0
end
pbts = []
for i in pbs
if i[1] < 11 and rand(2) > 0
pbts.push(i)
y = i[1] + rand(2)
case i[2]
when 0
@stuff[i[0] + 1][y] = 2
@stuff[i[0] + 2][y] = 2
@stuff[i[0] + 2][y + 1] = 2
@stuff[i[0] + 2][y + 2] = 2
when 1
@stuff[i[0] - 1][y] = 2
@stuff[i[0] - 2][y] = 2
@stuff[i[0] - 2][y + 1] = 2
@stuff[i[0] - 2][y + 2] = 2
end
end
end
for i in pbts
pbs.delete(i)
end
end
lastm += 2
end
dirt = dto
for x in 0..15
for y in 0..14
if @stuff[x][y] == 1 and dirt.include?([x, y]) == false
@rm = true
end
end
end
refresh
end
#--------------------------------------------------------------------------
# Done?
#--------------------------------------------------------------------------
def done?
done = true
for x in 0..15
for y in 0..14
if @stuff[x][y] == 2
if x > 0
done = false if @stuff[x - 1][y] == 1
end
if x < 15
done = false if @stuff[x + 1][y] == 1
end
if y > 0
done = false if @stuff[x][y - 1] == 1
end
if y < 14
done = false if @stuff[x][y + 1] == 1
end
end
end
end
return done
end
#--------------------------------------------------------------------------
# Refresh
#--------------------------------------------------------------------------
def refresh
self.contents.clear
types = ["DDirt", "Dirt", "DDirt"]
for x in 0..15
for y in 0..14
bitmap = RPG::Cache.icon(types[@stuff[x][y]])
self.contents.blt(x * 24, y * 24 + 24, bitmap, Rect.new(0, 0, 24, 24))
if @stuff[x][y] == 2
if y == 0
bitmap = RPG::Cache.icon("above")
self.contents.blt(x * 24, y * 24 + 24, bitmap, Rect.new(0, 0, 24, 24))
bitmap = RPG::Cache.icon($data_items[@id].icon_name)
self.contents.blt(x * 24, 0, bitmap, Rect.new(0, 0, 24, 24))
end
if @stuff[x][y + 1] == 2
bitmap = RPG::Cache.icon("below")
self.contents.blt(x * 24, y * 24 + 24, bitmap, Rect.new(0, 0, 24, 24))
end
if @stuff[x][y - 1] == 2
bitmap = RPG::Cache.icon("above")
self.contents.blt(x * 24, y * 24 + 24, bitmap, Rect.new(0, 0, 24, 24))
end
if @stuff[x - 1][y] == 2
bitmap = RPG::Cache.icon("left")
self.contents.blt(x * 24, y * 24 + 24, bitmap, Rect.new(0, 0, 24, 24))
end
if @stuff[x + 1][y] == 2
bitmap = RPG::Cache.icon("right")
self.contents.blt(x * 24, y * 24 + 24, bitmap, Rect.new(0, 0, 24, 24))
end
end
end
end
bitmap = RPG::Cache.icon("004-Weapon04")
self.contents.blt(@x * 24, @y * 24 + 24, bitmap, Rect.new(0, 0, 24, 24))
end
#--------------------------------------------------------------------------
# Update
#--------------------------------------------------------------------------
def update
super
@time_window.set_text("Cavando: " + @name + ". Tiempo restante: " + ((@time + 10) / 40).round.to_s, 1)
moved = false
if Input.repeat?(Input::DOWN)
if @y < 14
@y += 1
moved = true
end
end
if Input.repeat?(Input::UP)
if @y > 0
@y -= 1
moved = true
end
end
if Input.repeat?(Input::RIGHT)
if @x < 15
@x += 1
moved = true
end
end
if Input.repeat?(Input::LEFT)
if @x > 0
@x -= 1
moved = true
end
end
if @y > -1
@time -= 1
if @time < 0 or @stuff[@x][@y] == 2
refresh
Audio.se_play("Audio/SE/057-Wrong01")
@time_window.set_text("¡Cortaste la rama! Pulsa la tecla de acción para continuar...", 1)
@time_window.update
@done = true
return
end
end
if moved
if @y > -1
@stuff[@x][@y] = 0
Audio.se_play("Audio/SE/129-Earth01")
else
$game_system.se_play($data_system.cursor_se)
end
refresh
if done?
$game_system.me_play($game_system.battle_end_me)
$game_party.gain_item(@id, 1)
extra = ""
if @amount > 1
extra = "(" + @amount.to_s + ")"
end
@time_window.set_text("¡Ganaste " + @name + extra + "! Pulsa la tecla de acción para continuar...", 1)
@time_window.update
@done = true
end
end
end
#--------------------------------------------------------------------------
# Dirt touching origin
#--------------------------------------------------------------------------
def dto
dt = [[0, 0]]
checked = []
for x in 0..15
checked.push([])
for y in 0..14
checked[x].push(false)
end
end
for i in 0..50
for x in 0..15
for y in 0..14
if dt.include?([x, y]) and !checked[x][y]
checked[x][y] = true
if x > 0
if 1 == @stuff[x - 1][y] and !dt.include?([x - 1, y])
dt.push([x - 1, y])
end
end
if x < 15
if 1 == @stuff[x + 1][y] and !dt.include?([x + 1, y])
dt.push([x + 1, y])
end
end
if y > 0
if 1 == @stuff[x][y - 1] and !dt.include?([x, y - 1])
dt.push([x, y - 1])
end
end
if y < 14
if 1 == @stuff[x][y + 1] and !dt.include?([x, y + 1])
dt.push([x, y + 1])
end
end
end
end
end
end
return dt
end
end

Instrucciones:

+ Inserta los dos scripts sobre Main.
+ Para empezar a cavar, necesitas llamar al script: $scene = Scene_Herb.new(33, 8, 7, 1)

+ El 33 es el número, en la base de datos, del objeto que vas a recoger.
+ El 8 son los segundos que vas a tener para intentarlo.
+ El 7 es el tamaño de la planta.
+ El 1 es cuántas veces vas a recoger el objeto.
+ Para recolectar la planta, tienes que rodear todo su borde cavando.

Créditos:

Tiberius
avatar
Carlosjavierr
Administrador
Administrador

Mensajes : 71
Gracias : 20
Fecha de inscripción : 04/02/2010
Edad : 25

Ver perfil de usuario http://makercomunity.fororama.com

Volver arriba Ir abajo

Re: Script Recolectar

Mensaje  555Goku5551 el Vie Feb 05, 2010 8:13 pm

Muy bueno jejeje pero a mi no me sirve para ninguno de mis proyectos Sad
avatar
555Goku5551
Administrador
Administrador

Mensajes : 46
Gracias : 8
Fecha de inscripción : 04/02/2010
Edad : 21
Localización : Guarenas

Ver perfil de usuario http://ogaku-oficial.mi-foro.es

Volver arriba Ir abajo

Ver el tema anterior Ver el tema siguiente Volver arriba

- Temas similares

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