Jump to content
Rpg²S Forum

Tetris


fanton95
 Share

Recommended Posts

Tetris VX

Descrizione

Script personalizzabile che ricrea il famoso gioco Tetris

 

Autore

Tomoaky

 

Allegati

N/A

 

Istruzioni per l'uso

All'interno dello script con tutte le istruzioni per personalizzarlo. Nella cartella dei charas inserire i blocchi desiderati, ecco qualche esempio x24 e x32:

http://img33.imageshack.us/img33/4020/tetris1.png

http://img683.imageshack.us/img683/9281/tetris2.png

 

#==============================================================================# Tetris VX #------------------------------------------------------------------------------# Ricrea il famoso tetris per RPGVX.#------------------------------------------------------------------------------# Autore: Kyo Panda# Tradotto in italiano da: Fanton95# Creato il: 08/02/2010# Versione: 1.0# Script originale by tomoaky #============================================================================== #==============================================================================# Funzioni:#------------------------------------------------------------------------------# - Crea un mini-gioco in RPGVX come il classico Tetris. #============================================================================== #==============================================================================# Come usarlo:#------------------------------------------------------------------------------## #--------------------------------------------------------------------------# # Installazione:# #--------------------------------------------------------------------------## Incolla questo script prima del main nel Editor Script.## Configura questo script se necessario in "Configurazione" dopo la riga 52## #--------------------------------------------------------------------------# # Utilizzo:# #--------------------------------------------------------------------------## Richiama questo script in un evento parallelo qualunque con un chiama # script con questo codice:## * $scene = TPuzzle_Scene.new## Per uscire automaticamente dal gioco premere F5.##============================================================================== #==============================================================================# TPUZZLE#------------------------------------------------------------------------------# Modulo che setta la configurazione di Tetris.#============================================================================== module TPUZZLE  #--------------------------------------------------------------------------  # Configurazione  #--------------------------------------------------------------------------   # Definisce la dimensione dei blocchi in pixel.  TPUZZLE::CELL_SIZE = 24   # Definisce la lerghezza della scene e il numero indica    # la quantità massima di blocchi che potrebbe contenere.  # Numero minimo: 4  FIELD_WIDTH = 13   # Definisce l'altezza della scene e il numero indica    # la quantità massima di blocchi che potrebbe contenere.  # Numero minimo: 4  FIELD_HEIGHT = 20   # Definisce la distanza di "caduta" dalla finestra (a sinistra)  # prendendo come unità di misura i blocchi.  # Numero minimo: 0; Numero massimo: la larghezza della scena meno 4.     FIELD_LEFT = 1   # Definisce la distanza di "caduta" dalla finestra (a destra)  # prendendo come unità di misura i blocchi.  # Numero minimo: 0; Numero massimo: la larghezza della scena.     FIELD_RIGHT = 11   # Definisce la distanza di "caduta" dalla finestra (da sopra)  # prendendo come unità di misura i blocchi.  # Numero minimo: 0; Numero massimo: l'altezza della scena.     FIELD_TOP = 1   # Definisce la distanza di "caduta" dalla finestra (da sotto)  # prendendo come unità di misura i blocchi.  # Numero minimo: 4; Numero massimo: l'altezza della scena.   FIELD_BOTTOM = 18   # Definire qui il numero di linee necessarie a far proseguire  # al prossimo livello.  LEVEL_VALUE = 20   # Definire qui il numero di livelli massimi al termine del gioco.  # Settare 0 per disabilitare questa opzione.  FINAL_LEVEL = 15   # Definisci il nome dell'archivio chara che sarà visualizzato su   # schermo.L'archivio delle essere contenuto nella cartella   # "Graphics/Characters".  # PS: Il nome deve essere scritto tra virgolette ("") o tra apici ('').  CELL_FORM = "Tetris1"   # Definisci qui la cella del chara che deve esere visualizzata   # su schermo.  CELL_INDEX = 1   # Definsici qui il backgrounds del Tetris.  # l'archivio deve essere contenuto nella cartella "Graphics/System".  # E' possibile definire un background per ogni livello se non è così  # tutti avranno la stessa immagine come sfondo.  BACKGROUND_IMAGE = {  #   Livello => "Nome del background"		  1 => "Title",		 10 => "GameOver"  } # Non rimuovere questo!   # Definire qui la musica di sottofondo del Tetris.  # Gli archivi devono essere contenuti nella cartella "Audio/BGM".  # E' possibile definire un BGM per ogni livello se non è così  # tutti avranno la stesso suono come sottofondo.  BACKGROUND_MUSIC = {  #   Livello => "Nome del BGM"		  1 => "Town4",		 10 => "Battle8"  } # Non rimuovere questo!   # Definire qui i suoni di sottofondo del Tetris.  # Gli archivi devono essere contenuti nella cartella "Audio/SE".  # PS: Il nome deve essere scritto tra virgolette ("") o tra apici ('').  CELL_NEW_BLOCK_SOUND	= "Cursor"   # Nuovo blocco apparso nel gioco  CELL_MOVE_SOUND		 = "Cursor"   # Movimento del blocco  CELL_ROTATE_SOUND	   = "Evasion"  # Rotazione del blocco  CELL_NULL_ROTATE_SOUND  = ""		 # Impossibile rotazione del blocco  CELL_ERASE_LINE_SOUND   = "Absorb1"  # All'eliminazione della linea  CELL_4_ERASE_LINE_SOUND = "Applause" # All'eliminazione di 4 linee in contemp.  NEXT_LEVEL_SOUND		= "Chime2"   # Al termine del livello   # Definire qui le parole da usare nel Tetris.  # OBS: O nome deve estar entre aspas ("") ou apóstrofes ('').  SCORE	  = "Punti"		 # Punti  RECORD	 = "Record"		# Record  LEVEL	  = "Livello"	   # Livello  NEXT_LEVEL = "Prox. Livello" # Prossimo livello   # definire qui il colore dei font da usare nel Tetris.  # settare come Color.new(R, G, B, Opacidade)  FONT_HIGHLIGHT_COLOR = Color.new( 32, 160, 214, 255) # Fonte em destaque  FONT_COLOR		   = Color.new(255, 255, 255, 255) # Fonte normal   # Definire qui il numero della variabile che registrerà il livello del gioco  VARIABLE_ID = 1   #--------------------------------------------------------------------------  # Fine della configurazione  #--------------------------------------------------------------------------end #==============================================================================# TPuzzle_Cell#------------------------------------------------------------------------------# Questa classe configura i blocchi del tetris#============================================================================== class TPuzzle_Cell  #--------------------------------------------------------------------------  # Variabili publiche  #--------------------------------------------------------------------------  attr_reader :x  attr_reader :y  attr_reader :width  attr_reader :height  #--------------------------------------------------------------------------  # Inizializzazione dell'oggetto  #	 width  : Larghezza del blocco  #	 height : Altezza del blocco  #--------------------------------------------------------------------------  def initialize(width = 4, height = 4)	@x = 0	@y = 0	@width = width	@height = height	@cell = Array.new(@width * @height)	for i in 0...@cell.size do @cell[i] = " " end  end  #--------------------------------------------------------------------------  # Dispose  #--------------------------------------------------------------------------  def dispose	@cell = nil  end  #--------------------------------------------------------------------------  # Coordinate x e y dei blocchi  #	 x : Coordinata X da settare  #	 y : Coordinata Y da settare  #--------------------------------------------------------------------------  def get(x, y)	return @cell[x + @width * y]  end  #--------------------------------------------------------------------------  # Coordinate x e y dei blocchi  #	 x : Coordinata X da definire  #	 y : Coordinata Y da definire  #	 value : il valore della definizione  #--------------------------------------------------------------------------  def set(x, y, value)	@cell[x + @width * y] = value  end  #--------------------------------------------------------------------------  # Settaggio dello scontro dei blocchi   #	 x	: blocco nella Coordinata X  #	 y	: blocco nella Coordinata Y  #--------------------------------------------------------------------------  def hit?(x, y, cell)	for i in 0...cell.width	  for j in 0...cell.height		if cell.get(i, j) != " " and get(i + x, j + y) != " "		  return true		end	  end	end	return false  end  #--------------------------------------------------------------------------  # Aggiunta dei blocchi nelle coordinate X e Y  #	 x	: blocco nella Coordinata X  #	 y	: blocco nella Coordinata Y  #--------------------------------------------------------------------------  def add(x, y, cell)	for i in 0...cell.width	  for j in 0...cell.height		if cell.get(i, j) != " "		  set(i + x, j + y, cell.get(i, j))		end	  end	end  endend #==============================================================================# TPuzzle_Dropblock#------------------------------------------------------------------------------# Questa classe setta il comportamento dei blocchi una volta congiunti.#============================================================================== class TPuzzle_Dropblock < TPuzzle_Cell  #--------------------------------------------------------------------------  # Variabili publiche  #--------------------------------------------------------------------------  attr_reader :cx  attr_reader :cy  attr_reader :time  #-------------------------------------------------------------------------- # Inizializzazione dell'oggetto  #	 width  : Larghezza del blocco  #	 height : Altezza del blocco  #--------------------------------------------------------------------------  def initialize(width = 4, height = 4)	super(width, height)	@block_pattern = Array.new(TPUZZLE::CELL_SIZE)	@block_pattern[0]  = " #  ###		 "	@block_pattern[1]  = " #   ##  #	  "	@block_pattern[2]  = "	###  #	  "	@block_pattern[3]  = " #  ##   #	  "	@block_pattern[4]  = "	 ##  ##	 "	@block_pattern[5]  = "	 ##  ##	 "	@block_pattern[6]  = "	 ##  ##	 "	@block_pattern[7]  = "	 ##  ##	 "	@block_pattern[8]  = "	####		"	@block_pattern[9]  = " #   #   #   #  "	@block_pattern[10] = "	####		"	@block_pattern[11] = " #   #   #   #  "	@block_pattern[12] = "	##   ##	 "	@block_pattern[13] = "  #  ##  #	  "	@block_pattern[14] = "	##   ##	 "	@block_pattern[15] = "  #  ##  #	  "	@block_pattern[16] = "	 ## ##	  "	@block_pattern[17] = " #   ##   #	 "	@block_pattern[18] = "	 ## ##	  "	@block_pattern[19] = " #   ##   #	 "	@block_pattern[20] = "  # ###		 "	@block_pattern[21] = " #   #   ##	 "	@block_pattern[22] = "	### #	   "	@block_pattern[23] = "##   #   #	  "	@block_pattern[24] = "#   ###		 "	@block_pattern[25] = " ##  #   #	  "	@block_pattern[26] = "	###   #	 "	@block_pattern[27] = " #   #  ##	  "	@sprite = Sprite.new	@sprite.z = 250	@sprite.bitmap = Bitmap.new(128, 128)	@pattern_next = rand(7)	@sprite_next = Sprite.new	@sprite_next.x = 400	@sprite_next.y = 64	@sprite_next.z = 250	@sprite_next.bitmap = Bitmap.new(128, 128)	@sprite_background = Sprite.new	unless TPUZZLE::BACKGROUND_IMAGE[$scene.level] == nil	  @sprite_background.bitmap = Cache.system(TPUZZLE::BACKGROUND_IMAGE[$scene.level])	end	unless TPUZZLE::BACKGROUND_MUSIC[$scene.level] == nil	  RPG::BGM.new(TPUZZLE::BACKGROUND_MUSIC[$scene.level], 80, 100).play	end	reset(true)  end  #--------------------------------------------------------------------------  # Re-inizio del processo  #	 flag : definizione della fine del gioco  #--------------------------------------------------------------------------  def reset(flag = false)	@pattern = @pattern_next	set_pattern(@pattern * 4)	@pattern_next = rand(7)	@cx = 4	@cy = TPUZZLE::FIELD_TOP	@x = cx * TPUZZLE::CELL_SIZE	@y = cy * TPUZZLE::CELL_SIZE	@sprite.x = @x + (544 - TPUZZLE::FIELD_WIDTH * TPUZZLE::CELL_SIZE) / 2 - TPUZZLE::CELL_SIZE	@sprite.y = @y + (416 - TPUZZLE::FIELD_HEIGHT * TPUZZLE::CELL_SIZE)	@sprite.visible = true	@state = 0	@time = 0	@rotate = 0	draw	draw_next	unless flag	  if $scene.stage.hit?(@cx, @cy, $scene.block)		$scene.game_end = true	  end	end  end  #--------------------------------------------------------------------------  # Visione dei blocchi  #--------------------------------------------------------------------------  def draw	@sprite.bitmap.clear	bitmap_monster = Cache.character(TPUZZLE::CELL_FORM)	cell_form_x = (TPUZZLE::CELL_INDEX + 1) * 96 - 64	cell_form_y = 0	if TPUZZLE::CELL_INDEX >= 4	  cell_form_x = (TPUZZLE::CELL_INDEX - 4 + 1) * 96 - 64	  cell_form_y = 128	end	rect = Rect.new(cell_form_x, cell_form_y, TPUZZLE::CELL_SIZE,	TPUZZLE::CELL_SIZE)	for i in 0...@width	  for j in 0...@height		if get(i, j) == "#"		  @sprite.bitmap.blt(i * TPUZZLE::CELL_SIZE, j * TPUZZLE::CELL_SIZE,		  bitmap_monster, rect)		end	  end	end  end  #--------------------------------------------------------------------------  # Visione dei blocchi seguenti  #--------------------------------------------------------------------------  def draw_next	@sprite_next.bitmap.clear	bitmap_monster = Cache.character(TPUZZLE::CELL_FORM)	cell_form_x = (TPUZZLE::CELL_INDEX + 1) * 96 - 64	cell_form_y = 0	if TPUZZLE::CELL_INDEX >= 4	  cell_form_x = (TPUZZLE::CELL_INDEX - 4 + 1) * 96 - 64	  cell_form_y = 128	end	rect = Rect.new(cell_form_x, cell_form_y, TPUZZLE::CELL_SIZE,	TPUZZLE::CELL_SIZE)	for i in 0...@width * @height	  if @block_pattern[@pattern_next * 4][i, 1] == "#"		@sprite_next.bitmap.blt(i % 4 * TPUZZLE::CELL_SIZE, i / 4 * TPUZZLE::CELL_SIZE,		bitmap_monster, rect)	  end	end  end  #--------------------------------------------------------------------------  # Dispose  #--------------------------------------------------------------------------  def dispose	super	@sprite.dispose	@sprite_next.dispose  end  #--------------------------------------------------------------------------  # Refresh della scena  #--------------------------------------------------------------------------  def update	case @state	when 0	  update_input	when 1	  update_ground	when 2	  update_erase	when 3	  update_pop	end  end  #--------------------------------------------------------------------------  # Refresh del movimento dei blocchi  #--------------------------------------------------------------------------  def update_input	if @time > 0	  @time -= 1	  if @time == 0		if $scene.stage.hit?(@cx, @cy + 1, $scene.block)		  $scene.stage.add(@cx, @cy, $scene.block)		  @sprite.visible = false		  @state = 1		  RPG::SE.new(TPUZZLE::CELL_NEW_BLOCK_SOUND, 80, 100).play		end	  end	else	  @y += (Input.press?(Input::DOWN) ? 5 + ($scene.level / 3).to_i : ($scene.level / 3).to_i + 1)	  @cy = @y / TPUZZLE::CELL_SIZE	  if $scene.stage.hit?(@cx, @cy + 1, $scene.block)		@time = 20		@y = @cy * TPUZZLE::CELL_SIZE	  end	end	if @x == @cx * TPUZZLE::CELL_SIZE	  test_y = (@y % TPUZZLE::CELL_SIZE >= 16 ? 1 : 0)	  if Input.press?(Input::LEFT)		RPG::SE.new(TPUZZLE::CELL_MOVE_SOUND, 80, 100).play		unless $scene.stage.hit?(@cx - 1, @cy + test_y, $scene.block)		  @cx -= 1		end	  elsif Input.press?(Input::RIGHT)		RPG::SE.new(TPUZZLE::CELL_MOVE_SOUND, 80, 100).play		unless $scene.stage.hit?(@cx + 1, @cy + test_y, $scene.block)		  @cx += 1		end	  end	end	@x += 4 if @x < @cx * TPUZZLE::CELL_SIZE	@x -= 4 if @x > @cx * TPUZZLE::CELL_SIZE	@sprite.x = @x + (544 - TPUZZLE::FIELD_WIDTH * TPUZZLE::CELL_SIZE) / 2 - TPUZZLE::CELL_SIZE	@sprite.y = @y + (416 - TPUZZLE::FIELD_HEIGHT * TPUZZLE::CELL_SIZE)	rotate(-1) if Input.trigger?(Input::C)	rotate(1) if Input.trigger?(Input::B)  end  #--------------------------------------------------------------------------  # Refresh del background della scena  #--------------------------------------------------------------------------  def update_ground	@state = 3	n = 0  # Número de linhas existentes no fundo da tela	for i in TPUZZLE::FIELD_TOP..TPUZZLE::FIELD_BOTTOM	  for j in TPUZZLE::FIELD_LEFT..TPUZZLE::FIELD_RIGHT		break if $scene.stage.get(j, i) == " "		if j == TPUZZLE::FIELD_RIGHT		  for k in TPUZZLE::FIELD_LEFT..TPUZZLE::FIELD_RIGHT			$scene.stage.set(k, i, "+")		  end		  @state = 2		  @time = 0		  n += 1		end	  end	end	if n > 0	  $scene.score += n * n * 50	  RPG::SE.new(TPUZZLE::CELL_ERASE_LINE_SOUND, 80, 100).play	  RPG::SE.new(TPUZZLE::CELL_4_ERASE_LINE_SOUND, 80, 100).play if n == 4	end	$scene.line_number += n	if $scene.line_number >= TPUZZLE::LEVEL_VALUE	  loop do		@left_line_number = $scene.line_number - TPUZZLE::LEVEL_VALUE		$scene.level += 1		RPG::SE.new(TPUZZLE::NEXT_LEVEL_SOUND, 80, 100).play		$scene.line_number = @left_line_number		unless TPUZZLE::BACKGROUND_IMAGE[$scene.level] == nil		  @sprite_background.bitmap = Cache.system(TPUZZLE::BACKGROUND_IMAGE[$scene.level])		end		unless TPUZZLE::BACKGROUND_MUSIC[$scene.level] == nil		  RPG::BGM.new(TPUZZLE::BACKGROUND_MUSIC[$scene.level], 80, 100).play		end		break if $scene.line_number < TPUZZLE::LEVEL_VALUE	  end	end  end  #--------------------------------------------------------------------------  # Refresh dell'eliminazione delle linee  #--------------------------------------------------------------------------  def update_erase	@time += 1	if @time == 16	  for i in TPUZZLE::FIELD_TOP..TPUZZLE::FIELD_BOTTOM		if $scene.stage.get(1, i) == "+"		  y = i		  while(y >= TPUZZLE::FIELD_TOP)			for j in TPUZZLE::FIELD_LEFT..TPUZZLE::FIELD_RIGHT			  $scene.stage.set(j, y, $scene.stage.get(j, y - 1))			end			y -= 1		  end		end	  end	  @state = 3	end  end  #--------------------------------------------------------------------------  # settaggio per l'uso del blocco seguente  #--------------------------------------------------------------------------  def update_pop	reset  end  #--------------------------------------------------------------------------  # Rotazione dei blocchi  #	 n : lato della rotazione del blocco  #--------------------------------------------------------------------------  def rotate(n)	last_rotate = @rotate	@rotate += n	@rotate = 3 if @rotate < 0	@rotate = 0 if @rotate > 3	set_pattern(@pattern * 4 + @rotate)	if $scene.stage.hit?(@cx, @cy, $scene.block)	  @rotate = last_rotate	  set_pattern(@pattern * 4 + @rotate)	  RPG::SE.new(TPUZZLE::CELL_NULL_ROTATE_SOUND, 80, 100).play	else	  RPG::SE.new(TPUZZLE::CELL_ROTATE_SOUND, 80, 100).play	  draw	end  end  #--------------------------------------------------------------------------  # settaggio della forma dei blocchi  #	 pattern : forma definita  #--------------------------------------------------------------------------  def set_pattern(pattern)	for i in 0...@width * @height	  @cell[i] = @block_pattern[pattern][i, 1]	end  endend #==============================================================================# TPuzzle_Scene#============================================================================== class TPuzzle_Scene < Scene_Base  #--------------------------------------------------------------------------  # Variabili publiche  #--------------------------------------------------------------------------  attr_reader   :stage  attr_reader   :block  attr_reader   :total_time  attr_accessor :game_end  attr_accessor :score  attr_accessor :line_number  attr_accessor :level  #--------------------------------------------------------------------------  # Inizializzazione dell'oggetto   #--------------------------------------------------------------------------  def initialize	$game_temp.map_bgm = RPG::BGM.last	$game_temp.map_bgs = RPG::BGS.last	RPG::BGM.stop	RPG::BGS.stop	Sound.play_battle_start  end  #--------------------------------------------------------------------------  # Inizializzazione del processo  #--------------------------------------------------------------------------  def start	super	create_menu_background	@score = 0	@total_time = 0	@level = 1	@line_number = 0	@stage = TPuzzle_Cell.new(TPUZZLE::FIELD_WIDTH, TPUZZLE::FIELD_HEIGHT)	for i in 0...@stage.height	  @stage.set(0, i, "#")	  @stage.set(@stage.width - 1, i, "#")	end	for i in 0...@stage.width do @stage.set(i, @stage.height - 1, "#") end	@sprite = Sprite.new	@sprite.z = 200	bitmap = Bitmap.new(544, 416)	@sprite.bitmap = bitmap	@block = TPuzzle_Dropblock.new	@game_end = false  end  #--------------------------------------------------------------------------  # Fine del processo  #--------------------------------------------------------------------------  def terminate	if @score > $game_variables[TPUZZLE::VARIABLE_ID]	  $game_variables[TPUZZLE::VARIABLE_ID] = @score	end	unless $BTEST	  $game_temp.map_bgm.play	  $game_temp.map_bgs.play	end	super	dispose_menu_background	@sprite.dispose	@block.dispose	@stage.dispose  end  #--------------------------------------------------------------------------  # Refresh della finestra  #--------------------------------------------------------------------------  def update	super	if Input.trigger?(Input::F5) or @game_end	  $scene = Scene_Map.new	  return	end	unless TPUZZLE::FINAL_LEVEL <= 0 or TPUZZLE::FINAL_LEVEL == nil	  if $scene.level == TPUZZLE::FINAL_LEVEL		$scene = Scene_Map.new		return	  end	end	if @score > $game_variables[TPUZZLE::VARIABLE_ID]	  $game_variables[TPUZZLE::VARIABLE_ID] = @score	end	@block.update	@total_time += 1	draw  end  #--------------------------------------------------------------------------  # Visione principale  #--------------------------------------------------------------------------  def draw	@sprite.bitmap.clear	ox = (544 - TPUZZLE::FIELD_WIDTH * TPUZZLE::CELL_SIZE) / 2 - TPUZZLE::CELL_SIZE	oy = 416 - TPUZZLE::FIELD_HEIGHT * TPUZZLE::CELL_SIZE	color = TPUZZLE::FONT_HIGHLIGHT_COLOR	@sprite.bitmap.fill_rect(ox + 16, 0, 2, 416, color)	@sprite.bitmap.fill_rect(ox + TPUZZLE::FIELD_WIDTH * TPUZZLE::CELL_SIZE - 20,	0, 2, 416, color)	bitmap_monster = Cache.character(TPUZZLE::CELL_FORM)	cell_form_x = (TPUZZLE::CELL_INDEX + 1) * 96 - 64	cell_form_y = 0	if TPUZZLE::CELL_INDEX >= 4	  cell_form_x = (TPUZZLE::CELL_INDEX - 4 + 1) * 96 - 64	  cell_form_y = 128	end	rect = Rect.new(cell_form_x, cell_form_y, TPUZZLE::CELL_SIZE, TPUZZLE::CELL_SIZE)	alpha = 255 - @block.time * 16	for i in TPUZZLE::FIELD_LEFT..TPUZZLE::FIELD_RIGHT	  for j in TPUZZLE::FIELD_TOP..TPUZZLE::FIELD_BOTTOM		if @stage.get(i, j) == "#"		  @sprite.bitmap.blt(i * TPUZZLE::CELL_SIZE + ox, j * TPUZZLE::CELL_SIZE + oy,		  bitmap_monster, rect)		elsif @stage.get(i, j) == "+"		  @sprite.bitmap.blt(i * TPUZZLE::CELL_SIZE + ox, j * TPUZZLE::CELL_SIZE + oy,		  bitmap_monster, rect, alpha)		end	  end	end	@sprite.bitmap.font.color = TPUZZLE::FONT_HIGHLIGHT_COLOR	@sprite.bitmap.draw_text(ox + TPUZZLE::FIELD_WIDTH * TPUZZLE::CELL_SIZE,	16, 120, 24, TPUZZLE::SCORE, 1)	@sprite.bitmap.font.color = TPUZZLE::FONT_COLOR	@sprite.bitmap.draw_text(ox + TPUZZLE::FIELD_WIDTH * TPUZZLE::CELL_SIZE,	40, 120, 24, @score.to_s, 2)	@sprite.bitmap.font.color = TPUZZLE::FONT_HIGHLIGHT_COLOR	@sprite.bitmap.draw_text(ox + TPUZZLE::FIELD_WIDTH * TPUZZLE::CELL_SIZE,	416 - 64, 120, 24, TPUZZLE::RECORD, 1)	@sprite.bitmap.font.color = TPUZZLE::FONT_COLOR	@sprite.bitmap.draw_text(ox + TPUZZLE::FIELD_WIDTH * TPUZZLE::CELL_SIZE,	416 - 40, 120, 24, $game_variables[TPUZZLE::VARIABLE_ID].to_s, 2)	@sprite.bitmap.font.color = TPUZZLE::FONT_HIGHLIGHT_COLOR	@sprite.bitmap.draw_text(ox + TPUZZLE::FIELD_WIDTH * TPUZZLE::CELL_SIZE,	416 - 208, 120, 24, TPUZZLE::NEXT_LEVEL, 1)	@sprite.bitmap.font.color = TPUZZLE::FONT_COLOR	@sprite.bitmap.draw_text(ox + TPUZZLE::FIELD_WIDTH * TPUZZLE::CELL_SIZE,	416 - 184, 120, 24, @line_number.to_s + "/" + TPUZZLE::LEVEL_VALUE.to_s, 2)	@sprite.bitmap.font.color = TPUZZLE::FONT_HIGHLIGHT_COLOR	@sprite.bitmap.draw_text(ox + TPUZZLE::FIELD_WIDTH * TPUZZLE::CELL_SIZE,	416 - 136, 120, 24, TPUZZLE::LEVEL, 1)	@sprite.bitmap.font.color = TPUZZLE::FONT_COLOR	@sprite.bitmap.draw_text(ox + TPUZZLE::FIELD_WIDTH * TPUZZLE::CELL_SIZE,	416 - 112, 120, 24, @level.to_s, 2)  endend

 

Bugs e Conflitti Noti

N/A

 

Altri Dettagli

Vi consiglio di lasciarlo così com'è perché se cambiate un valore dovrete cambiarne molti altri per una corretta visualizzazione del mini-gioco. Non mi funziona lo spoiler :-S

 

http://img717.imageshack.us/img717/779/tetrisvx01.png

Edited by fanton95

"Oh perché dobbiamo essere così, noi? – ci domandiamo talvolta allo specchio - con questa faccia, con questo corpo? – alziamo una mano, nell'incoscienza; e il gesto ci resta sospeso. Ci pare strano che l'abbiamo fatto noi. Ci vediamo vivere. […] In certi momenti di silenzio interiore, in cui l'anima nostra si spoglia di tutte le funzioni abituali, e gli occhi nostri diventano più acuti e più penetranti, noi vediamo noi stessi nella vita, e in se stessa la vita, quasi in una modalità arida, inquietante; ci sentiamo assaltare da una strana impressione, come se, in un baleno, ci si chiarisse una realtà diversa da quella che normalmente percepiamo, una realtà vivente oltre la vista umana, fuori delle forme dell'umana ragione." [L.P.]

 

http://img43.imageshack.us/img43/4231/vgmiud3f.png

 

 

http://rpg2s.net/gif/SCContest1Oct.gif http://www.rpg2s.net/img/fablecontest3rd.png http://rpg2s.net/gif/SCContest1Oct.gif

 

RPG by forum

 

 

 

 

 

 

 

 

 

 

http://img59.imageshack.us/img59/6/av2w.png

Nome: Erech (In elfico "lancia solitaria", da er (ereb) = "solitario" e ech = "lancia")

 

Età: 19

 

Razza: Umani

 

Descrizione: Erech è un ragazzo alto e slanciato, dalla corporatura tonica e scattante. Ha capelli lunghi e violacei come gli occhi che però sono spesso coperti in parte da un elegante cappello nero. Veste con uno stile classico, una camicetta bianca sotto una giacca nera e un fiocco al collo ornato con un'immancabile piuma azzurra. Gli piace leggere e scrivere e ama tradurre testi in lingue antiche.

 

Carattere: Il ragazzo ha un carattere chiuso e introverso, è di poche parole e preferisce i fatti alle parole. Non si relaziona spesso con i coetanei o se lo fa significa che si fida cecamente della persona che ha davanti; è diffidente e tende a non raccontare fatti del suo passato, belli o brutti che siano.

 

 

Link to comment
Share on other sites

  • 2 weeks later...
Aggiornato il primo topic con lo screen originale ^^

"Oh perché dobbiamo essere così, noi? – ci domandiamo talvolta allo specchio - con questa faccia, con questo corpo? – alziamo una mano, nell'incoscienza; e il gesto ci resta sospeso. Ci pare strano che l'abbiamo fatto noi. Ci vediamo vivere. […] In certi momenti di silenzio interiore, in cui l'anima nostra si spoglia di tutte le funzioni abituali, e gli occhi nostri diventano più acuti e più penetranti, noi vediamo noi stessi nella vita, e in se stessa la vita, quasi in una modalità arida, inquietante; ci sentiamo assaltare da una strana impressione, come se, in un baleno, ci si chiarisse una realtà diversa da quella che normalmente percepiamo, una realtà vivente oltre la vista umana, fuori delle forme dell'umana ragione." [L.P.]

 

http://img43.imageshack.us/img43/4231/vgmiud3f.png

 

 

http://rpg2s.net/gif/SCContest1Oct.gif http://www.rpg2s.net/img/fablecontest3rd.png http://rpg2s.net/gif/SCContest1Oct.gif

 

RPG by forum

 

 

 

 

 

 

 

 

 

 

http://img59.imageshack.us/img59/6/av2w.png

Nome: Erech (In elfico "lancia solitaria", da er (ereb) = "solitario" e ech = "lancia")

 

Età: 19

 

Razza: Umani

 

Descrizione: Erech è un ragazzo alto e slanciato, dalla corporatura tonica e scattante. Ha capelli lunghi e violacei come gli occhi che però sono spesso coperti in parte da un elegante cappello nero. Veste con uno stile classico, una camicetta bianca sotto una giacca nera e un fiocco al collo ornato con un'immancabile piuma azzurra. Gli piace leggere e scrivere e ama tradurre testi in lingue antiche.

 

Carattere: Il ragazzo ha un carattere chiuso e introverso, è di poche parole e preferisce i fatti alle parole. Non si relaziona spesso con i coetanei o se lo fa significa che si fida cecamente della persona che ha davanti; è diffidente e tende a non raccontare fatti del suo passato, belli o brutti che siano.

 

 

Link to comment
Share on other sites

Bello, ma dice errore sulla stringa 301!! che devo fare??

http://i50.tinypic.com/2wqek4w.png

http://img204.imageshack.us/img204/3846/albo.png

http://img521.imageshack.us/img521/5624/narutorasenganmomentamvm.gif

http://img103.imageshack.us/img103/6893/userbaromino1tt3yr.gif

http://img146.imageshack.us/img146/5058/rpgvxbarrpgmki5.png

http://img237.imageshack.us/img237/2482/30275.png

http://i40.tinypic.com/soqvb8.jpg

http://img43.imageshack.us/img43/4231/vgmiud3f.png

GIOCO IN PROGETTAZIONE: Naruto The Original Story<-------Clicca!

CONTEST VINTI:

http://i48.tinypic.com/21owyt0.jpg

ADOTTINI:

 

 

Jack

Link to comment
Share on other sites

Hai verificato se ogni musica da te settata nello script esista?

"Oh perché dobbiamo essere così, noi? – ci domandiamo talvolta allo specchio - con questa faccia, con questo corpo? – alziamo una mano, nell'incoscienza; e il gesto ci resta sospeso. Ci pare strano che l'abbiamo fatto noi. Ci vediamo vivere. […] In certi momenti di silenzio interiore, in cui l'anima nostra si spoglia di tutte le funzioni abituali, e gli occhi nostri diventano più acuti e più penetranti, noi vediamo noi stessi nella vita, e in se stessa la vita, quasi in una modalità arida, inquietante; ci sentiamo assaltare da una strana impressione, come se, in un baleno, ci si chiarisse una realtà diversa da quella che normalmente percepiamo, una realtà vivente oltre la vista umana, fuori delle forme dell'umana ragione." [L.P.]

 

http://img43.imageshack.us/img43/4231/vgmiud3f.png

 

 

http://rpg2s.net/gif/SCContest1Oct.gif http://www.rpg2s.net/img/fablecontest3rd.png http://rpg2s.net/gif/SCContest1Oct.gif

 

RPG by forum

 

 

 

 

 

 

 

 

 

 

http://img59.imageshack.us/img59/6/av2w.png

Nome: Erech (In elfico "lancia solitaria", da er (ereb) = "solitario" e ech = "lancia")

 

Età: 19

 

Razza: Umani

 

Descrizione: Erech è un ragazzo alto e slanciato, dalla corporatura tonica e scattante. Ha capelli lunghi e violacei come gli occhi che però sono spesso coperti in parte da un elegante cappello nero. Veste con uno stile classico, una camicetta bianca sotto una giacca nera e un fiocco al collo ornato con un'immancabile piuma azzurra. Gli piace leggere e scrivere e ama tradurre testi in lingue antiche.

 

Carattere: Il ragazzo ha un carattere chiuso e introverso, è di poche parole e preferisce i fatti alle parole. Non si relaziona spesso con i coetanei o se lo fa significa che si fida cecamente della persona che ha davanti; è diffidente e tende a non raccontare fatti del suo passato, belli o brutti che siano.

 

 

Link to comment
Share on other sites

a ecco grazie non lo avevo fatto! ^_^ comunque molto bello!

http://i50.tinypic.com/2wqek4w.png

http://img204.imageshack.us/img204/3846/albo.png

http://img521.imageshack.us/img521/5624/narutorasenganmomentamvm.gif

http://img103.imageshack.us/img103/6893/userbaromino1tt3yr.gif

http://img146.imageshack.us/img146/5058/rpgvxbarrpgmki5.png

http://img237.imageshack.us/img237/2482/30275.png

http://i40.tinypic.com/soqvb8.jpg

http://img43.imageshack.us/img43/4231/vgmiud3f.png

GIOCO IN PROGETTAZIONE: Naruto The Original Story<-------Clicca!

CONTEST VINTI:

http://i48.tinypic.com/21owyt0.jpg

ADOTTINI:

 

 

Jack

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...