PureGolf mit TicTacToe

Hier kann alles mögliche diskutiert werden. Themen zu Purebasic sind hier erwünscht.
Flames und Spam kommen ungefragt in den Mülleimer.
Benutzeravatar
MLK
Beiträge: 267
Registriert: 01.11.2004 13:17
Wohnort: Hamburg

Beitrag von MLK »

nco2k hat geschrieben:@MLK
ja gut, dafür ist die schrift am anfang nicht in der gewünschten grösse und wird jedesmal neu gesetzt/geladen, pro schleifendurchgang. da ist mir die version von Stefan lieber.
schaus dir noch mal an, habe es 2 minuten nach posten editiert. es ist alles so wie vorher - nur kürzer.
Benutzeravatar
nco2k
Beiträge: 892
Registriert: 08.09.2004 23:13

Beitrag von nco2k »

@MLK
:lol: :allright:

c ya,
nco2k
~|__/
..o.o.. <--- This is Einkaufswagen. Copy Einkaufswagen into your signature to help him on his way to world domination.
Benutzeravatar
Then
Beiträge: 278
Registriert: 06.09.2004 13:26
Wohnort: Siegen

Beitrag von Then »

568 :

Code: Alles auswählen

Procedure S(k,s.s) 
  SetGadgetText(k,s) 
EndProcedure 
Dim T(9) 
s.s=" turn" 
t=79
c=190 
CreateGadgetList(OpenWindow(0,0,0,c,210,$C80001,"XXO")) 
TextGadget(9,0,c,c,20,"O"+s,1) 
For a=SetGadgetFont(9,LoadFont(9,z.s,12)) To8 
 ButtonGadget(a,70*a%3,a/3*70,50,50,z) 
 SetGadgetFont(a,LoadFont(a,z,24)) 
Next 
Repeat
 w=WindowEvent() 
 If w>999 
  O=EventwParam() 
  If T(O)=0 
   T(O)=P+1 
   h.s=Chr(t+P*9) 
   S(O,h) 
   S(9,Chr(t+P!1*9)+s) 
   For i=DisableGadget(O,1) To2 
    x=i*3 
    If (T(x)&T(x+1)&T(x+2))|(T(i)&T(i+3)&T(i+6))|(T(i)&T(4)&T(8-i)) 
     For a=0 To9 
      T(a)=S(a,z)  
      DisableGadget(a,0) 
     Next 
     P=S(9,h+" wins")  
    EndIf 
   Next 
   P!1 
  EndIf 
 EndIf
Until w=16
PB 6.10LTs / Windows 11 64Bit (i9/32GB/ 1TB-SSD+4TB-HDD/3060GTX12GB) / 2x27" Multitouch

... ich mache dazu keine Aussage, weil ich mich damit selbst belasten könnte !
Benutzeravatar
Then
Beiträge: 278
Registriert: 06.09.2004 13:26
Wohnort: Siegen

Beitrag von Then »

567 :

Code: Alles auswählen

Procedure S(k,s.s) 
  SetGadgetText(k,s) 
EndProcedure 
Dim T(9) 
s.s=" turn" 
t=79
c=190 
CreateGadgetList(OpenWindow(0,0,0,c,210,$C80001,"XXO")) 
TextGadget(9,0,c,c,20,"O"+s,1) 
For a=SetGadgetFont(9,LoadFont(9,z.s,12)) To8 
 ButtonGadget(a,70*a%3,a/3*70,50,50,z) 
 SetGadgetFont(a,LoadFont(a,z,24)) 
Next 
While w<>16
 w=WindowEvent() 
 If w>999 
  O=EventwParam() 
  If T(O)=0 
   T(O)=P+1 
   h.s=Chr(t+P*9) 
   S(O,h) 
   S(9,Chr(t+P!1*9)+s) 
   For i=DisableGadget(O,1) To2 
    x=i*3 
    If (T(x)&T(x+1)&T(x+2))|(T(i)&T(i+3)&T(i+6))|(T(i)&T(4)&T(8-i)) 
     For a=0 To9 
      T(a)=S(a,z)  
      DisableGadget(a,0) 
     Next 
     P=S(9,h+" wins")  
    EndIf 
   Next 
   P!1 
  EndIf 
 EndIf
Wend
PB 6.10LTs / Windows 11 64Bit (i9/32GB/ 1TB-SSD+4TB-HDD/3060GTX12GB) / 2x27" Multitouch

... ich mache dazu keine Aussage, weil ich mich damit selbst belasten könnte !
Benutzeravatar
NicTheQuick
Ein Admin
Beiträge: 8807
Registriert: 29.08.2004 20:20
Computerausstattung: Ryzen 7 5800X, 64 GB DDR4-3200
Ubuntu 24.04.2 LTS
GeForce RTX 3080 Ti
Wohnort: Saarbrücken

Beitrag von NicTheQuick »

Immer noch 568, aber dafür ohne Fehlerbericht!

Code: Alles auswählen

Procedure S(k,s.s)
  SetGadgetText(k,s)
EndProcedure
Dim T(9)
s.s=" turn"
t=79
c=190
CreateGadgetList(OpenWindow(0,0,0,c,210,$C80001,"XXO"))
TextGadget(9,0,c,c,20,"O"+s,1)
For a=SetGadgetFont(9,LoadFont(9,z.s,12)) To8
  ButtonGadget(a,70*a%3,a/3*70,50,50,z)
  SetGadgetFont(a,LoadFont(a,z,24))
Next
Repeat
  w=WindowEvent()
  If w=13100
    O=EventwParam()
    If T(O)=0
      T(O)=P+1
      h.s=Chr(t+P*9)
      P!1
      x=S(O,h)
      S(9,Chr(t+P*9)+s)
      For i=DisableGadget(O,1) To2
        If (T(x)&T(x+1)&T(x+2))|(T(i)&T(i+3)&T(i+6))|(T(i)&T(4)&T(8-i))
          For a=0 To9
            T(a)=S(a,z)
            DisableGadget(a,0) 
          Next
          P=S(9,h+" wins")
        EndIf
        x+3
      Next
    EndIf
  EndIf
Until w=16
Benutzeravatar
NicTheQuick
Ein Admin
Beiträge: 8807
Registriert: 29.08.2004 20:20
Computerausstattung: Ryzen 7 5800X, 64 GB DDR4-3200
Ubuntu 24.04.2 LTS
GeForce RTX 3080 Ti
Wohnort: Saarbrücken

Beitrag von NicTheQuick »

562! Beenden mit ESC!

Code: Alles auswählen

Procedure S(k,s.s)
  SetGadgetText(k,s)
EndProcedure
Dim T(9)
s.s=" turn"
t=79
c=190
CreateGadgetList(OpenWindow(0,0,0,c,210,1,"XXO"))
TextGadget(9,0,c,c,20,"O"+s,1)
For a=SetGadgetFont(9,LoadFont(9,z.s,12)) To8
  ButtonGadget(a,70*a%3,a/3*70,50,50,z)
  SetGadgetFont(a,LoadFont(a,z,24))
Next
Repeat
  w=WindowEvent()
  O=EventwParam()
  If w=13100
    If T(O)=0
      T(O)=P+1
      h.s=Chr(t+P*9)
      P!1
      x=S(O,h)
      S(9,Chr(t+P*9)+s)
      For i=DisableGadget(O,1) To2
        If (T(x)&T(x+1)&T(x+2))|(T(i)&T(i+3)&T(i+6))|(T(i)&T(4)&T(8-i))
          For a=0 To9
            T(a)=S(a,z)
            DisableGadget(a,0) 
          Next
          P=S(9,h+" wins")
        EndIf
        x+3
      Next
    EndIf
  EndIf
Until O=27
Benutzeravatar
MLK
Beiträge: 267
Registriert: 01.11.2004 13:17
Wohnort: Hamburg

Beitrag von MLK »

561 ;-)

Code: Alles auswählen

Procedure S(k,s.s) 
  SetGadgetText(k,s) 
EndProcedure 
Dim T(9) 
s.s=" turn" 
t=79 
c=190 
CreateGadgetList(OpenWindow(0,0,0,c,210,1,"XXO")) 
TextGadget(9,0,c,c,20,"O"+s,1) 
For a=SetGadgetFont(9,LoadFont(9,z.s,12)) To8 
  ButtonGadget(a,70*a%3,a/3*70,50,50,z) 
  SetGadgetFont(a,LoadFont(a,z,24)) 
Next 
While O<>27 
  w=WindowEvent() 
  O=EventwParam() 
  If w=13100 
    If T(O)=0 
      T(O)=P+1 
      h.s=Chr(t+P*9) 
      P!1 
      x=S(O,h) 
      S(9,Chr(t+P*9)+s) 
      For i=DisableGadget(O,1) To2 
        If (T(x)&T(x+1)&T(x+2))|(T(i)&T(i+3)&T(i+6))|(T(i)&T(4)&T(8-i)) 
          For a=0 To9 
            T(a)=S(a,z) 
            DisableGadget(a,0) 
          Next 
          P=S(9,h+" wins") 
        EndIf 
        x+3 
      Next 
    EndIf 
  EndIf 
Wend
Benutzeravatar
Then
Beiträge: 278
Registriert: 06.09.2004 13:26
Wohnort: Siegen

Beitrag von Then »

560 : (optisch schöner !!)

Code: Alles auswählen

Procedure S(k,s.s) 
  SetGadgetText(k,s) 
EndProcedure 
Dim T(9) 
s.s=" turn" 
t=70 
CreateGadgetList(OpenWindow(0,0,0,t*3,230,1,"XXO")) 
TextGadget(9,0,t*3,t,20,"O"+s,1) 
For a=SetGadgetFont(9,LoadFont(9,z.s,12)) To8 
  ButtonGadget(a,t*a%3,a/3*t,t,t,z) 
  SetGadgetFont(a,LoadFont(a,z,24)) 
Next 
t+9
Repeat 
  w=WindowEvent() 
  O=EventwParam() 
  If w=13100 
    If T(O)=0 
      T(O)=P+1 
      h.s=Chr(t+P*9) 
      P!1 
      x=S(O,h) 
      S(9,Chr(t+P*9)+s) 
      For i=DisableGadget(O,1) To2 
        If (T(x)&T(x+1)&T(x+2))|(T(i)&T(i+3)&T(i+6))|(T(i)&T(4)&T(8-i)) 
          For a=0 To9 
            T(a)=S(a,z) 
            DisableGadget(a,0) 
          Next 
          P=S(9,h+" wins") 
        EndIf 
        x+3 
      Next 
    EndIf 
  EndIf 
Until O=27
PB 6.10LTs / Windows 11 64Bit (i9/32GB/ 1TB-SSD+4TB-HDD/3060GTX12GB) / 2x27" Multitouch

... ich mache dazu keine Aussage, weil ich mich damit selbst belasten könnte !
Benutzeravatar
HeX0R
Beiträge: 3040
Registriert: 10.09.2004 09:59
Computerausstattung: AMD Ryzen 7 5800X
96Gig Ram
NVIDIA GEFORCE RTX 3060TI/8Gig
Win11 64Bit
G19 Tastatur
2x 24" + 1x27" Monitore
Glorious O Wireless Maus
PB 3.x-PB 6.x
Oculus Quest 2 + 3
Kontaktdaten:

Beitrag von HeX0R »

559

Code: Alles auswählen

Procedure S(k,s.s)
  SetGadgetText(k,s)
EndProcedure
Dim T(9)
s.s=" turn"
t=70
CreateGadgetList(OpenWindow(0,0,0,t*3,230,1,"XXO"))
TextGadget(9,0,t*3,t,20,"O"+s,1)
For a=SetGadgetFont(9,LoadFont(9,z.s,12)) To8
  ButtonGadget(a,t*a%3,a/3*t,t,t,z)
  SetGadgetFont(a,LoadFont(a,z,24))
Next
t+9
Repeat
  w=WindowEvent()
  O=EventwParam()
  If w=13100
    If T(O)=0
      T(O)=P+1
      z=Chr(t+P*9)
      P!1
      x=S(O,z)
      S(9,Chr(t+P*9)+s)
      For i=DisableGadget(O,1) To2
        If (T(x)&T(x+1)&T(x+2))|(T(i)&T(i+3)&T(i+6))|(T(i)&T(4)&T(8-i))
          For a=0 To9
            T(a)=S(a,"")
            DisableGadget(a,0)
          Next
          P=S(9,z+" wins")
        EndIf
        x+3
      Next
    EndIf
  EndIf
Until O=27
Benutzeravatar
Then
Beiträge: 278
Registriert: 06.09.2004 13:26
Wohnort: Siegen

Beitrag von Then »

wieder 1 !! 558 :

Code: Alles auswählen

Procedure S(k,s.s) 
  SetGadgetText(k,s) 
EndProcedure 
Dim T(9) 
s.s=" turn" 
t=70 
CreateGadgetList(OpenWindow(0,0,0,t*3,230,1,"XXO")) 
TextGadget(9,t,t*3,t,20,"O"+s,1) 
For a=SetGadgetFont(9,LoadFont(9,z.s,12)) To8 
  ButtonGadget(a,t*a%3,a/3*t,t,t,z) 
  SetGadgetFont(a,LoadFont(a,z,24)) 
Next 
t+9 
While O<>27 
  w=WindowEvent() 
  O=EventwParam() 
  If w=13100 
    If T(O)=0 
      T(O)=P+1 
      z=Chr(t+P*9) 
      P!1 
      x=S(O,z) 
      S(9,Chr(t+P*9)+s) 
      For i=DisableGadget(O,1) To2 
        If (T(x)&T(x+1)&T(x+2))|(T(i)&T(i+3)&T(i+6))|(T(i)&T(4)&T(8-i)) 
          For a=0 To9 
            T(a)=S(a,"") 
            DisableGadget(a,0) 
          Next 
          P=S(9,z+" wins") 
        EndIf 
        x+3 
      Next 
    EndIf 
  EndIf 
Wend
PB 6.10LTs / Windows 11 64Bit (i9/32GB/ 1TB-SSD+4TB-HDD/3060GTX12GB) / 2x27" Multitouch

... ich mache dazu keine Aussage, weil ich mich damit selbst belasten könnte !
Antworten