| 'Sta mattina, non avendo niente da fare, ho creato in autoit il mitico gioco di sasso carta forbice. è molto cool perchè. - ci sono le opzioni dove puoi scegliere se essere 'carta' 'forbice' o 'sasso'. Si può giocare in 2, in 3 o contro il computer. - Il gioco è fico. scaricate l'exe da http://www.mediafire.com/?9didxxcwz9u <-qui Ci sono 2 parti di codice (la prima è quella delle opzioni (67 righe)) CODICE #include <GUIDefaultConstants.au3> #include <GUIConstantsEx.au3> #include <WindowsConstants.au3> #include <ComboConstants.au3> #include <ListViewConstants.au3> #include <StaticConstants.au3> #include <ButtonConstants.au3> #include <ListBoxConstants.au3> #include <TabConstants.au3> #include <EditConstants.au3> #include <DateTimeConstants.au3> #include <SliderConstants.au3> #include <TreeViewConstants.au3> #include <ProgressConstants.au3> #include <AVIConstants.au3> #include <UpDownConstants.au3>
$Gui1=GUICreate('Sasso carta forbice - seleziona numero di giocatori',300,200) GUICtrlCreateLabel('Numero di giocatori',2,2) GUICtrlSetFont(-1,8,5000,1,'arial') $gioc=GUICtrlCreateCombo('1',105,2,190,20) GUICtrlSetData(-1,'2|3') GUICtrlSetFont(-1,8,5000,1,'arial') GUICtrlCreateLabel('Nome giocatore 1',2,40) GUICtrlSetFont(-1,8,5000,1,'arial') $g1=GUICtrlCreateCombo('Sasso',102,40,193,20) GUICtrlSetFont(-1,8,5000,1,'arial') GUICtrlSetData(-1,'Carta|Forbice') GUICtrlCreateLabel('Nome giocatore 2',2,70) GUICtrlSetFont(-1,8,5000,1,'arial') $g2=GUICtrlCreateCombo('Carta',102,70,193,20) GUICtrlSetFont(-1,8,5000,1,'arial') GUICtrlSetData(-1,'Sasso|Forbice') GUICtrlSetState(-1,$GUI_DISABLE) GUICtrlCreateLabel('Nome giocatore 3',2,100) GUICtrlSetFont(-1,8,5000,1,'arial') $g3=GUICtrlCreateCombo('Forbice',102,100,193,20) GUICtrlSetFont(-1,8,5000,1,'arial') GUICtrlSetData(-1,'Carta|Sasso') GUICtrlSetState(-1,$GUI_DISABLE) $vai=GUICtrlCreateButton('Gioca!',2,150,80,20)
GUISetState ( )
While 1 Switch GUIGetMsg() Case $vai IniWrite('op.ini','giocatori','giocatori',GUICtrlRead($gioc)) IniWrite('op.ini','nome','1',guictrlread($g1)) IniWrite('op.ini','nome','2',guictrlread($g2)) IniWrite('op.ini','nome','3',guictrlread($g3)) Run('gioco.exe') Case $GUI_EVENT_CLOSE Exit EndSwitch
Sleep(80) If GUICtrlRead($gioc)='2' Then GUICtrlSetState($g2,$GUI_ENABLE) GUICtrlSetState($g3,$GUI_DISABLE) ElseIf GUICtrlRead($gioc)='1' Then GUICtrlSetState($g2,$GUI_DISABLE) ElseIf GUICtrlRead($gioc)='3' Then GUICtrlSetState($g2,$GUI_ENABLE) GUICtrlSetState($g3,$GUI_ENABLE) EndIf WEnd La seconda (è quella del gioco (267 righe)): CODICE #include <GUIDefaultConstants.au3> #include <GUIConstantsEx.au3> #include <WindowsConstants.au3> #include <ComboConstants.au3> #include <ListViewConstants.au3> #include <StaticConstants.au3> #include <ButtonConstants.au3> #include <ListBoxConstants.au3> #include <TabConstants.au3> #include <EditConstants.au3> #include <DateTimeConstants.au3> #include <SliderConstants.au3> #include <TreeViewConstants.au3> #include <ProgressConstants.au3> #include <AVIConstants.au3> #include <UpDownConstants.au3> cercaIni() Local $o_speech = ObjCreate("SAPI.SpVoice") $gui=GUICreate('Sasso carta forbice - gioco',270,110) $vai=GUICtrlCreateButton('vai',2,2,80,20)
GUISetState( )
While 1 Switch GUIGetMsg() Case $vai If IniRead('op.ini','giocatori','giocatori','')='1' Then giocoIn1() ElseIf IniRead('op.ini','giocatori','giocatori','')='2' Then giocoIn2() ElseIf IniRead('op.ini','giocatori','giocatori','')='3' Then giocoIn3() EndIf Case $GUI_EVENT_CLOSE Exit EndSwitch WEnd
Func giocoIn1() _Talk($o_speech, 'Sasso carta forbice') Sleep(2000) GUICtrlCreateLabel('Giocatore: ',2,30) GUICtrlSetFont(-1,8,5000,1,'arial') $i1=GUICtrlCreateInput('',65,28,200,20) GUICtrlSetFont(-1,8,5000,1,'arial') GUICtrlSetState(-1,$GUI_DISABLE) GUICtrlCreateLabel('Computer 1: ',2,60) GUICtrlSetFont(-1,8,5000,1,'arial') $i2=GUICtrlCreateInput('',65,58,200,20) GUICtrlSetFont(-1,8,5000,1,'arial') GUICtrlSetState(-1,$GUI_DISABLE) GUICtrlCreateLabel('Computer 2:',2,90) GUICtrlSetFont(-1,8,5000,1,'arial') $i3=GUICtrlCreateInput('',65,88,200,20) GUICtrlSetFont(-1,8,5000,1,'arial') GUICtrlSetState(-1,$GUI_DISABLE) Sleep(2000) $a=Random (1,3,1) If $a=1 Then GUICtrlSetData($i1,'sasso') GUICtrlSetData($i2,'altro') GUICtrlSetData($i3,'altro') If IniRead('op.ini','nome','1','')='Sasso' Then TrayTip('Vinto!','Hai vinto!',1) Else TrayTip('Perso!','Hai perso!',1) EndIf EndIf If $a=2 Then GUICtrlSetData($i2,'carta') GUICtrlSetData($i1,'altro') GUICtrlSetData($i3,'altro') If IniRead('op.ini','nome','1','')='Carta' Then TrayTip('Vinto!','Hai vinto!',1) Else TrayTip('Perso!','Hai perso!',1) EndIf EndIf If $a=3 Then GUICtrlSetData($i3,'forbice') GUICtrlSetData($i1,'altro') GUICtrlSetData($i2,'altro') If IniRead('op.ini','nome','1','')='forbice' Then TrayTip('Vinto!','Hai vinto!',1) Else TrayTip('Perso!','Hai perso!',1) EndIf EndIf EndFunc
Func giocoIn2() _Talk($o_speech, 'Sasso carta forbice') Sleep(2000) GUICtrlCreateLabel('Giocatore 1: ',2,30) GUICtrlSetFont(-1,8,5000,1,'arial') $i1=GUICtrlCreateInput('',65,28,200,20) GUICtrlSetFont(-1,8,5000,1,'arial') GUICtrlSetState(-1,$GUI_DISABLE) GUICtrlCreateLabel('Giocatore 2: ',2,60) GUICtrlSetFont(-1,8,5000,1,'arial') $i2=GUICtrlCreateInput('',65,58,200,20) GUICtrlSetFont(-1,8,5000,1,'arial') GUICtrlSetState(-1,$GUI_DISABLE) GUICtrlCreateLabel('Computer 1:',2,90) GUICtrlSetFont(-1,8,5000,1,'arial') $i3=GUICtrlCreateInput('',65,88,200,20) GUICtrlSetFont(-1,8,5000,1,'arial') GUICtrlSetState(-1,$GUI_DISABLE) Sleep(2000) $a=Random (1,3,1) If $a=1 Then GUICtrlSetData($i1,'sasso') GUICtrlSetData($i2,'altro') GUICtrlSetData($i3,'altro') If IniRead('op.ini','nome','1','')='Sasso' Then TrayTip('Vinto!','Hai vinto!',1) Else TrayTip('Perso!','Hai perso!',1) EndIf If IniRead('op.ini','nome','2','')='Sasso' Then TrayTip('Vinto!','Ha vinto il giocatore 2!',1) Else TrayTip('Perso!','Avete perso!',1) EndIf EndIf If $a=2 Then GUICtrlSetData($i2,'carta') GUICtrlSetData($i1,'altro') GUICtrlSetData($i3,'altro') If IniRead('op.ini','nome','1','')='Carta' Then TrayTip('Vinto!','Ha vinto il giocatore 1!',1) Else TrayTip('Perso!','Avete perso!',1) EndIf If IniRead('op.ini','nome','2','')='Carta' Then TrayTip('Vinto!','Ha vinto il giocatore 2!',1) Else TrayTip('Perso!','Avete perso!',1) EndIf EndIf If $a=3 Then GUICtrlSetData($i3,'forbice') GUICtrlSetData($i1,'altro') GUICtrlSetData($i2,'altro') If IniRead('op.ini','nome','1','')='Forbice' Then TrayTip('Vinto!','Ha vinto il giocatore 1!',1) Else TrayTip('Perso!','Avete perso!',1) EndIf If IniRead('op.ini','nome','2','')='Forbice' Then TrayTip('Vinto!','Ha vinto il giocatore 2!',1) Else TrayTip('Perso!','Avete perso!',1) EndIf EndIf EndFunc
Func giocoIn3() _Talk($o_speech, 'Sasso carta forbice') Sleep(2000) GUICtrlCreateLabel('Giocatore 1: ',2,30) GUICtrlSetFont(-1,8,5000,1,'arial') $i1=GUICtrlCreateInput('',65,28,200,20) GUICtrlSetFont(-1,8,5000,1,'arial') GUICtrlSetState(-1,$GUI_DISABLE) GUICtrlCreateLabel('Giocatore 2: ',2,60) GUICtrlSetFont(-1,8,5000,1,'arial') $i2=GUICtrlCreateInput('',65,58,200,20) GUICtrlSetFont(-1,8,5000,1,'arial') GUICtrlSetState(-1,$GUI_DISABLE) GUICtrlCreateLabel('Giocatore 3:',2,90) GUICtrlSetFont(-1,8,5000,1,'arial') $i3=GUICtrlCreateInput('',65,88,200,20) GUICtrlSetFont(-1,8,5000,1,'arial') GUICtrlSetState(-1,$GUI_DISABLE) $a=Random (1,3,1) If $a=1 Then GUICtrlSetData($i1,'sasso') GUICtrlSetData($i2,'altro') GUICtrlSetData($i3,'altro') If IniRead('op.ini','nome','1','')='Sasso' Then TrayTip('Vinto!','Ha vinto il giocatore 1!',1) Else TrayTip('Perso!','Avete perso!',1) EndIf If IniRead('op.ini','nome','2','')='Sasso' Then TrayTip('Vinto!','Ha vinto il giocatore 2!',1) Else TrayTip('Perso!','Avete perso!',1) EndIf If IniRead('op.ini','nome','3','')='Sasso' Then TrayTip('Vinto!','ha vinto il giocatore 3!',1) Else TrayTip('Perso!','Avete perso!',1) EndIf EndIf If $a=2 Then GUICtrlSetData($i2,'carta') GUICtrlSetData($i1,'altro') GUICtrlSetData($i3,'altro') If IniRead('op.ini','nome','1','')='Carta' Then TrayTip('Vinto!','Ha vinto il giocatore 1!',1) Else TrayTip('Perso!','Avete perso!',1) EndIf If IniRead('op.ini','nome','2','')='Carta' Then TrayTip('Vinto!','Ha vinto il giocatore 2!',1) Else TrayTip('Perso!','Avete perso!',1) EndIf If IniRead('op.ini','nome','3','')='Carta' Then TrayTip('Vinto!','ha vinto il giocatore 3!',1) Else TrayTip('Perso!','Avete perso!',1) EndIf EndIf If $a=3 Then GUICtrlSetData($i3,'forbice') GUICtrlSetData($i1,'altro') GUICtrlSetData($i2,'altro') If IniRead('op.ini','nome','1','')='Forbice' Then TrayTip('Vinto!','Ha vinto il giocatore 1!',1) Else TrayTip('Perso!','Avete perso!',1) EndIf If IniRead('op.ini','nome','2','')='Forbice' Then TrayTip('Vinto!','Ha vinto il giocatore 2!',1) Else TrayTip('Perso!','Avete perso!',1) EndIf If IniRead('op.ini','nome','3','')='Forbice' Then TrayTip('Vinto!','ha vinto il giocatore 3!',1) Else TrayTip('Perso!','Avete perso!',1) EndIf EndIf EndFunc
Func _Talk(ByRef $o_speech, $s_text, $s_voice = 3) Local Const $SVSFlagsAsync = 1 Select Case $s_voice == 1 $o_speech.Voice = $o_speech.GetVoices ("Name=Microsoft Mary", "Language=409").Item (0) Case $s_voice == 2 $o_speech.Voice = $o_speech.GetVoices ("Name=Microsoft Mike", "Language=409").Item (0) Case $s_voice == 3 $o_speech.Voice = $o_speech.GetVoices ("Name=Microsoft Sam", "Language=409").Item (0) EndSelect $o_speech.Speak ($s_text, $SVSFlagsAsync) EndFunc ;==>_Talk
Func cercaIni() If FileExists('op.ini') Then ;;; Else MsgBox(0,'Errore!','Create le opzioni..',3) Exit EndIf EndFunc scaricate l'exe da http://www.mediafire.com/?9didxxcwz9u <-qui DITEMI CHE NE PENSATE!
|