Mini Game: Jogo da Velha
5 participantes
King Rpg Maker :: Lixeira :: Scripts
Página 1 de 1
Mini Game: Jogo da Velha
Função: É um mini-game de jogo da velha no qual o jogador joga contra o computador. Fiz a inteligencia artificial de tal forma que é praticamente impossivel ganhar.
Incompactibilidade: Não existe
Comentários: Foi feito para o Aldox como presente do Amigo Secreto. Se alguem conseguir venser o computador, por favor avise-me para que possa melhorar ainda mais o sistema.
Utilização: Coloque em um chamar script:
Código:
Sendo X o ID da variável que conterá o resultado da partida:
0 = Jogador Ganhou (quase impossivel...)
1 = Computador Ganhou
2 = Deu Velha
Incompactibilidade: Não existe
Comentários: Foi feito para o Aldox como presente do Amigo Secreto. Se alguem conseguir venser o computador, por favor avise-me para que possa melhorar ainda mais o sistema.
Utilização: Coloque em um chamar script:
Código:
- Código:
$scene = Velha_Game.new(X
Sendo X o ID da variável que conterá o resultado da partida:
0 = Jogador Ganhou (quase impossivel...)
1 = Computador Ganhou
2 = Deu Velha
- Spoiler:
- ################################################################################
##### M I N I - G A M E ########################################################
########## v1.0.0 ##############################################################
############################### # O # X ######################################
############################### ######### ######################################
########## By: LB ############# # O # X ######################################
############################### ######### ######################################
############################### O # # X ######################################
################################################################################
class Velha_Game < Scene_Base
def initialize(var)
@var = var
end
def start
super
create_menu_background
end
def post_start
l = 544
v = 4
for i in 0...(544-416)/v
l -= v
Graphics.resize_screen(l,416)
end
@pos = [
[1,2,3],
[4,5,6],
[7,8,9],
[1,4,7],
[2,5,8],
[3,6,9],
[1,5,9],
[3,5,7]]
@pos2 = [
[1,5,9,3,7],
[9,5,1,7,3],
[3,5,7,1,9],
[7,5,3,9,1],
[1,9,5,4,8],
[3,7,5,6,2]]
@pos3 = [
1,
3,
9,
7]
@jogou = []
@jogada = 0
@w = Window_Velha.new
end
def update
super
update_menu_background
@w.update
if Input.trigger?(Input::C) and @jogou[@w.index] == nil
@jogada += 1
@w.draw("O")
@jogou[@w.index] = 1
t = 0
for i in 0...9
t += 1 if @jogou[i] != nil
end
if t != 9
h = @w.index
ia
@w.draw("X")
@jogou[@w.index] = 0
@w.index = h
end
end
for i in 0...2
@v = i
if f(1,2,3) or f(4,5,6) or f(7,8,9) or
f(1,4,7) or f(2,5, or f(3,6,9) or
f(1,5,9) or f(3,5,7)
$game_variables[@var] = (@v == 0 ? 2 : 1)
$scene = Scene_Map.new
end
end
t = 0
for i in 0...9
t += 1 if @jogou[i] != nil
end
if t == 9
$game_variables[@var] = 3
$scene = Scene_Map.new
end
end
def ia
for t in 0...2
@v = t
for i in [Tens de ter uma conta e sessão iniciada para poderes visualizar este link]
a = @pos[i][0]
b = @pos[i][1]
c = @pos[i][2]
if (j(a) and j(b) and !j(c))
next if @jogou[c-1] != nil
@w.index = c-1
return
elsif (j(a) and !j(b) and j(c))
next if @jogou[b-1] != nil
@w.index = b-1
return
elsif (!j(a) and j(b) and j(c))
next if @jogou[a-1] != nil
@w.index = a-1
return
end
end
end
if s != false
@w.index = s-1
return
end
@v = 1
@w.index = 3
if @jogada == 1
for i in 0...4
@w.index = 4 if j(@pos3[i])
end
end
@v = 0
return if @w.index == 4
loop do
@w.index = rand(9)
next if @jogada == 1 and (@w.index == 1 or @w.index == 3 or @w.index == 5 or @w.index == 7)
return if @jogou[@w.index] == nil
end
end
def s
for i in 0...6
@v = 1
a = j(@pos2[i][0]) and j(@pos2[i][1])
@v = 0
for h in 0...2
r = @pos2[i][3+h] if a and j(@pos2[i][2]) and @jogou[@pos2[i][3+h]] == nil
end
end
return (r == nil ? false : r)
end
def f(a,b,c)
return (j(a) and j(b) and j(c))
end
def j(i)
return @jogou[i-1] == @v
end
def terminate
super
Graphics.freeze
@w.dispose
perform_transition
l = 416
v = 4
for i in 0...(544-416)/v
l += v
Graphics.resize_screen(l,416)
end
dispose_menu_background
end
end
class Window_Velha < Window_Selectable
def initialize
super(0, 0, 416, 416, 32)
@item_max = 9
@column_max = 3
self.index = 0
self.contents.font.size = 50
end
def draw(symbol)
a = (416-32)/3
x = define_x(a)
y = define_y(a)
self.contents.draw_text(x,y+((a-50)/2),a,50,symbol.to_s,1)
end
def define_x(a)
case @index
when 0,3,6
x = a*0
when 1,4,7
x = a*1
when 2,5,8
x = a*2
end
return x
end
def define_y(a)
case @index
when 0,1,2
y = a*0
when 3,4,5
y = a*1
when 6,7,8
y = a*2
end
return y
end
def update_cursor
if @index < 0
self.cursor_rect.empty
else
a = (416-32)/3
x = define_x(a)
y = define_y(a)
self.cursor_rect.set(x, y, a, a)
end
end
end
Zelos WilderKing - Mensagens : 496
Moedas KRM : 6118
Localização : Rio de Janeiro
Especialidade : Designer
Engine Favorita : RPG Maker VX
Re: Mini Game: Jogo da Velha
Apesar de não ter screenshot, parece ser interessante.
Dark.Naruto- Novato
- Mensagens : 17
Moedas KRM : 5252
Especialidade : Pixel Artist
Engine Favorita : RPG Maker VX
Re: Mini Game: Jogo da Velha
Parece ser bom.
Bob- Novato
- Mensagens : 9
Moedas KRM : 5252
Especialidade : Eventer
Engine Favorita : RPG Maker VX
Re: Mini Game: Jogo da Velha
Esse foi um dos scripts que o LB fez,que eu não fui muito a fim!!!
Apesar de que esse script é um "puzzle" muito bem criado acho que não utilizaria em meus jogos!!
So mais Janken-Po:)
Apesar de que esse script é um "puzzle" muito bem criado acho que não utilizaria em meus jogos!!
So mais Janken-Po:)
MamberKing - Mensagens : 226
Moedas KRM : 5588
Localização : São Paulo
Especialidade : Mapper
Engine Favorita : RPG Maker VX
Tópicos semelhantes
» um novo jogo
» Porcentagem do Jogo
» ReinoRPG Mini-Mapa
» Mudando a fonte do jogo.
» Dá abrir jogo do rmvx sem o programa?
» Porcentagem do Jogo
» ReinoRPG Mini-Mapa
» Mudando a fonte do jogo.
» Dá abrir jogo do rmvx sem o programa?
King Rpg Maker :: Lixeira :: Scripts
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos
|
|