[Ayuda] Array y Label
Publicado: 17 Sep 2011, 02:20
Hola gente, como estan? necesito un poquitito de su sabiduria!!!
La cuestion es asi, hace unos dias con unos compañeros juegue un juego que se llama Cadaver exquisito (en lapiz y papel)
Link Wiki de Cadaver Exquisito
y bueno, se me ocurrio programarlo, aunque lo escencial ya esta echo, quiero modificar algo y no me sale.
El tema es que quiero generar un array con los nombres de los jugadores y en un label poner al jugador que le tocaria... pero no puedo, lei y lei pero no encuentro como hacerlo.
Este es el fuente completo:
Si no quieren verlo todo pq seguro es un quilombo de cosas, les dejo las partes donde debe estar el error:
Muchas Gracias!
La cuestion es asi, hace unos dias con unos compañeros juegue un juego que se llama Cadaver exquisito (en lapiz y papel)
Link Wiki de Cadaver Exquisito
y bueno, se me ocurrio programarlo, aunque lo escencial ya esta echo, quiero modificar algo y no me sale.
El tema es que quiero generar un array con los nombres de los jugadores y en un label poner al jugador que le tocaria... pero no puedo, lei y lei pero no encuentro como hacerlo.
Este es el fuente completo:
Código: Seleccionar todo
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#Include <Array.au3>
#Region ### START Koda GUI section ### Form=m:\cadaver exquisito\form1.kxf
#cs
Principal
#ce
$Form1_1_1 = GUICreate("Form1", 482, 429, 337, 145)
$Group1 = GUICtrlCreateGroup("Opciones", 8, 64, 465, 81)
GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
$Label2 = GUICtrlCreateLabel("Cantidad de Jugadores :", 16, 88, 119, 17)
$Label3 = GUICtrlCreateLabel("Cantidad de Rondas :", 16, 112, 107, 17)
$Input1 = GUICtrlCreateInput("", 136, 80, 49, 24, BitOR($GUI_SS_DEFAULT_INPUT,$ES_NUMBER))
$Input2 = GUICtrlCreateInput("", 136, 104, 49, 24, BitOR($GUI_SS_DEFAULT_INPUT,$ES_NUMBER))
$Button1 = GUICtrlCreateButton("Comenzar", 216, 104, 97, 33)
GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
$Button2 = GUICtrlCreateButton("Reiniciar", 344, 104, 97, 33)
GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
$Button7 = GUICtrlCreateButton("Elegír nombre de los Jugadores", 240, 80, 169, 17)
GUICtrlSetFont(-1, 8, 400, 0, "Calibri")
GUICtrlSetBkColor(-1, 0xD7E4F2)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Group2 = GUICtrlCreateGroup("Estado", 8, 152, 465, 49)
GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
$Label4 = GUICtrlCreateLabel("Jugador:", 16, 176, 54, 20)
GUICtrlSetFont(-1, 10, 400, 0, "Tahoma")
GUICtrlSetColor(-1, 0xFF0000)
$Label5 = GUICtrlCreateLabel("Ronda:", 296, 176, 45, 20)
GUICtrlSetFont(-1, 10, 400, 0, "Tahoma")
GUICtrlSetColor(-1, 0xFF0000)
$Label10 = GUICtrlCreateLabel("", 72, 176, 204, 20)
$Label11 = GUICtrlCreateLabel("", 344, 176, 44, 20)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Group3 = GUICtrlCreateGroup("Frase del último Jugador", 8, 208, 465, 65)
GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
$Input3 = GUICtrlCreateInput("", 16, 232, 449, 24, BitOR($GUI_SS_DEFAULT_INPUT,$ES_AUTOVSCROLL,$ES_READONLY), $WS_EX_STATICEDGE)
GUICtrlSetFont(-1, 12, 800, 0, "Tahoma")
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Group4 = GUICtrlCreateGroup("Tus Frases", 8, 280, 465, 121)
GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
$Input4 = GUICtrlCreateInput("", 16, 304, 449, 24)
$Input5 = GUICtrlCreateInput("", 16, 336, 449, 24)
$Button3 = GUICtrlCreateButton("Borrar Frases", 99, 368, 129, 25)
$Button4 = GUICtrlCreateButton("Siguiente Jugador", 275, 368, 129, 25)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Label6 = GUICtrlCreateLabel("Developed By", 320, 404, 71, 17)
$Label7 = GUICtrlCreateLabel("ToXic ®", 392, 400, 74, 26)
GUICtrlSetFont(-1, 14, 800, 0, "Consolas")
GUICtrlSetColor(-1, 0x00FF00)
$Label1 = GUICtrlCreateLabel("Cadavre Exquis", 8, 8, 465, 55)
GUICtrlSetFont(-1, 42, 800, 0, "Gorestep")
GUICtrlSetColor(-1, 0xFF0000)
GUISetState(@SW_SHOW)
$Form2 = GUICreate("Cadaver Exquisito", 481, 535, 436, 33)
$Edit1 = GUICtrlCreateEdit("", 8, 56, 464, 447, BitOR($ES_LEFT,$ES_AUTOVSCROLL,$ES_AUTOHSCROLL,$ES_READONLY,$ES_WANTRETURN,$WS_VSCROLL,$WS_BORDER))
GUICtrlSetFont(-1, 14, 800, 0, "Times New Roman")
$Label8 = GUICtrlCreateLabel("He aqui vuestra creacion...", 8, 8, 319, 47)
GUICtrlSetFont(-1, 18, 800, 0, "Segoe Print")
GUICtrlSetColor(-1, 0xFF0000)
$Button5 = GUICtrlCreateButton("Copiar al ClipBoard", 16, 504, 161, 25)
$Button6 = GUICtrlCreateButton("Volver a Jugar", 296, 504, 169, 25)
$Form3 = GUICreate("Agregar Jugadores", 323, 104, 472, 280)
$Group5 = GUICtrlCreateGroup("Nombre Jugadores", 8, 8, 305, 57)
GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
$Input6 = GUICtrlCreateInput("", 88, 32, 145, 21)
$Label12 = GUICtrlCreateLabel("Jugador", 24, 36, 42, 17)
$Label13 = GUICtrlCreateLabel("0", 72, 37, 10, 17)
$Button8 = GUICtrlCreateButton("Agregar", 248, 32, 59, 25)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Button9 = GUICtrlCreateButton("Reiniciar Nombres", 16, 72, 107, 25)
$Button10 = GUICtrlCreateButton("Listo", 232, 72, 75, 25)
#EndRegion ### END Koda GUI section ###
Global $jug=1,$rond=1,$jugador[15],$c=0,$j=0
While 1
$msg = GuiGetMsg()
Select
Case $msg = $GUI_EVENT_CLOSE
ExitLoop
Case $msg = $Button1
if GUICtrlRead($Input1)>1 AND GUICtrlRead($Input1)<10 AND GUICtrlRead($Input2)>0 Then
GUICtrlSetState($Input1, $GUI_DISABLE)
GUICtrlSetState($Input2, $GUI_DISABLE)
GUICtrlSetState($Button1, $GUI_DISABLE)
GUICtrlSetState($Input4, $GUI_ENABLE)
GUICtrlSetState($Input5, $GUI_ENABLE)
GUICtrlSetState($Button3, $GUI_ENABLE)
GUICtrlSetState($Button4, $GUI_ENABLE)
GUICtrlSetData($Label10,$jugador[0])
GUICtrlSetData($Label11,$rond)
Else
MsgBox(0,"Error","Elija entre 2 y 10 jugadores y como mínimo una ronda")
EndIf
Case $msg = $Button2
Reiniciar()
Case $msg = $Button3
GUICtrlSetData($Input4,"")
GUICtrlSetData($Input5,"")
Case $msg = $Button4
If(GUICtrlRead($Input4)=="" OR GUICtrlRead($Input5)=="") Then
MsgBox(0,"ERROR:","Ingrese texto")
Else
GUICtrlSetData($Input3,GUICtrlRead($Input5))
GUICtrlSetData($Edit1,GUICtrlRead($Edit1)&GUICtrlRead($Input4)& @CRLF &GUICtrlRead($Input5)&@CRLF)
Sigjug()
EndIf
Case $msg = $Button5
ClipPut(GUICtrlRead($Edit1))
Case $msg = $Button6
if MsgBox(4,"Confirmacion","¿Esta seguro que quiere reiniciar todo?") == 6 Then
Reiniciar()
GUISetState(@SW_HIDE,ControlGetHandle("","",$Form2))
EndIf
Case $msg = $Button7
If GUICtrlRead($Input1)>1 AND GUICtrlRead($Input1)<10 AND GUICtrlRead($Input2)>0 Then
GUISetState(@SW_SHOW,ControlGetHandle("","",$Form3))
Else
MsgBox(0,"Error","Debe elegir primero la cantidad de jugadores")
EndIf
Case $msg = $Button8
if GUICtrlRead($Input6)=="" Then
MsgBox(0,"Error","Debe ingresar un nombre valido")
Else
Agregar()
EndIf
Case $msg = $Button9
$jugador=""
GUICtrlSetData($Input6,"")
GUICtrlSetState($Input6,$GUI_ENABLE)
GUICtrlSetState($Button8,$GUI_ENABLE)
$c=0
Case $msg = $Button10
GUISetState(@SW_HIDE,ControlGetHandle("","",$Form3))
EndSelect
Wend
Exit
Func Sigjug()
If GUICtrlRead($Input2)==$rond AND $jug==GUICtrlRead($Input1) then
GUICtrlSetData($Input3,"")
GUICtrlSetData($Input4,"")
GUICtrlSetData($Input5,"")
MsgBox(0,"Juego Terminado", "Aceptar para ver el cadaver")
WinActivate("Cadaver Exquisito")
GUISetState(@SW_SHOW,ControlGetHandle("","",$Form2))
Return
EndIf
if GUICtrlRead($Input2)>=$rond AND $jug<=(GUICtrlRead($Input1)) Then
GUICtrlSetData($Input4,"")
GUICtrlSetData($Input5,"")
$jug+=1
if $jug==(GUICtrlRead($Input1))+1 Then
$rond+=1
$jug=1
EndIf
GUICtrlSetData($Label10,$jugador[$j])
GUICtrlSetData($Label11,$rond)
$j+=1
Return
EndIf
EndFunc
Func Reiniciar()
GUICtrlSetData($Input1,"")
GUICtrlSetData($Input2,"")
GUICtrlSetData($Input3,"")
GUICtrlSetData($Input4,"")
GUICtrlSetData($Input5,"")
GUICtrlSetData($Edit1,"")
GUICtrlSetData($Label10,"")
GUICtrlSetData($Label11,"")
GUICtrlSetState($Button1, $GUI_ENABLE)
GUICtrlSetState($Input1, $GUI_ENABLE)
GUICtrlSetState($Input2, $GUI_ENABLE)
GUICtrlSetState($Input4, $GUI_DISABLE)
GUICtrlSetState($Input5, $GUI_DISABLE)
GUICtrlSetState($Button3, $GUI_DISABLE)
GUICtrlSetState($Button4, $GUI_DISABLE)
$jug=1
$rond=1
$c=0
$j=0
Return
EndFunc
Func Agregar()
if GUICtrlRead($Input1)>($c+1) Then
_ArrayInsert($jugador[$c],GUICtrlRead($Input6))
GUICtrlSetData($Input6,"")
$c+=1
Else
GUICtrlSetState($Input6,$GUI_DISABLE)
GUICtrlSetState($Button8,$GUI_DISABLE)
EndIf
Return
EndFunc
Código: Seleccionar todo
Func Agregar()
if GUICtrlRead($Input1)>($c+1) Then
_ArrayInsert($jugador[$c],GUICtrlRead($Input6)) [color=#FF0000]ACA?[/color]
GUICtrlSetData($Input6,"")
$c+=1
Else
GUICtrlSetState($Input6,$GUI_DISABLE)
GUICtrlSetState($Button8,$GUI_DISABLE)
EndIf
Return
EndFunc
Código: Seleccionar todo
if GUICtrlRead($Input2)>=$rond AND $jug<=(GUICtrlRead($Input1)) Then
GUICtrlSetData($Input4,"")
GUICtrlSetData($Input5,"")
$jug+=1
if $jug==(GUICtrlRead($Input1))+1 Then
$rond+=1
$jug=1
EndIf
GUICtrlSetData($Label10,$jugador[$j]) [color=#FF0000]ACA?[/color]
GUICtrlSetData($Label11,$rond)
$j+=1
Return
EndIf
Muchas Gracias!