Új hozzászólás Aktív témák
-
focker
csendes tag
Végre megy, csak nem egészen úgy működik, ahogy kellene.
Ha a foreach reész a rajzolás után van, akkor vízszintesen/függőlegesen is akármennyit tudok rakni, akkor sem nyer egyik játékos sem. Csak valami nagyon extrém esetet sikertült kreálnom, amikor nyert valaki.
Ha a kirajzolás előtt, akkor meg még nem rajzolja ki az 5.-et, de már nyert a játékos.
[Szerkesztve] -
focker
csendes tag
Nem megy ez nekem
Hogy tudom az adott jeleket összehasonlítani egymással? Az utolsó pontból először 8 irányba kell vizsgálni, hogy van-e ugyanolyan. Ha van, akkor már csak az azt megelőzőt kell nézni. Pl aktuális koord. 5,5; akkor meg kell nézni a 4,4; 4,5; 4,6; 5,4; 5,6; 6,4; 6,5; 6,6; koordinátájú pontokat. Mondjuk ezek közül a 4,4 és az 5,6 koordinátákon van ugyanolyan. Akkor már csak ezekre kell nézni, hogy a 3,3 és 5,7 koordinátákon ugyanolyan van-e. Na de mindezt hogy lehet Tcl-ben? -
focker
csendes tag
Közben megvan a hiba oka. Viszont továbbra is lehet egy négyzetben o és x.
-
focker
csendes tag
így gondoltad?
...
global jatekos
global tabla
set kordx [expr $x / $meret]
set kordy [expr $y / $meret]
set key ''$kordx;$kordy''
if { [llength [array get tabla $key] ] == 0 } {
array set tabla [list $key $jatekos]
}
if {$jatekos == 0} {
...
Így nekem: Invalid Command Name ''N'' hibát dob, ahol N az a sor, ahova kattintottam. -
focker
csendes tag
Valaki aki ért ehhez a script nyelvhez, segíthetne egy rövidke feladatban:
#!/usr/local/bin/wishx -f
proc beosztas {path dx dy meret} {
for {set i 0} {$i <= $dx} {incr i $meret} { $path create line $i 0 $i $dy }
for {set i 0} {$i <= $dy} {incr i $meret} { $path create line 0 $i $dx $i }
}
proc Kattintas {path x y meret} {
global jatekos
set kordx [expr $x / $meret]
set kordy [expr $y / $meret]
if {$jatekos == 0} {
$path create oval [expr $kordx*$meret+2] [expr $kordy*$meret+2] \
[expr ($kordx+1)*$meret-2] [expr ($kordy+1)*$meret-2] \
-outline red
set jatekos 1
} else {
$path create line [expr $kordx*$meret+2] [expr $kordy*$meret+2] \
[expr ($kordx+1)*$meret-2] [expr ($kordy+1)*$meret-2] \
-fill blue
$path create line [expr $kordx*$meret+2] [expr ($kordy+1)*$meret-2] \
[expr ($kordx+1)*$meret-2] [expr ($kordy)*$meret+2] \
-fill blue
set jatekos 0
}
}
wm title . ''Canvas Item Demonstration''
wm iconname . ''Items''
set c .c
frame .frame
pack .frame -side top -fill both -expand yes
canvas $c -width 400 -height 400 \
-relief sunken -borderwidth 2
pack $c -in .frame -expand yes -fill both
set meret 20
set jatekos 0
bind $c <1> ''Kattintas %W %x %y $meret''
bind $c <Configure> ''beosztas %W %w %h $meret''
Van egy ilyen script, ez csinál egy négyzetrácsos táblát, amire lehet x-et és o-t rakni. Probléma egy helyre rakható o és x is. Hogy lehet ezt kiküszöbölni, hogy úgy működjön az egész, mint egy amőba játék (egy helyre csak x vagy csak o legyen rakható, és detektálja, ha valamelyik játékos nyer).
Új hozzászólás Aktív témák
- Milyen billentyűzetet vegyek?
- Vezetékes FEJhallgatók
- Xiaomi 14 - párátlanul jó lehetne
- Villanyszerelés
- Építő/felújító topik
- Azonnali mobilos kérdések órája
- LEGO klub
- Ilyen olcsó sem volt még egy Apple notebook
- Motorolaj, hajtóműolaj, hűtőfolyadék, adalékok és szűrők topikja
- Milyen egeret válasszak?
- További aktív témák...
- Fujitsu Esprimo P520 E85+ PC, i5-4570 Proci, 8 GB DDR3 RAM, 240 GB SSD
- MSI GeForce RTX 5090 VANGUARD SOC /// ÚJ BONTATLAN /// 2028.12.01.-ig GARI /// 2025.12.01. gyártás!
- Gaming PC GTX 1660 Ti / 16GB RAM Azonnal vihető (CSGO,LOL,VALORANT,FORTNITE)
- SAMSUNG 4TB 990 EVO PLUS M.2 NVME PCI-E 4.0 x4/ 5.0 X2 - Új - 7250-6300 MBs - Eladó!
- Dell XPS 13 Plus 9320 i7-1260P 32GB 512GB 4K+ TouchScreen 1 év garancia
- CoolerMaster MM710 53gr pehelykönnyű gamer egér eladó
- Alkalmi vétel! HP Omen 17! I7 12700H / RTX 3070Ti 8GB / 1TB Nvme SSD / 16GB DDR5 !
- AKCIÓ! MSI ThinA15 B7VF-449XHU Gamer notebook - R7 7735HS 16GB DDR5 1TB SSD nVidia RTX 4060 8GB
- 215 - Lenovo LOQ (15IRX9) - Intel Core i7-13650HX, RTX 4060
- BESZÁMÍTÁS! Intel Core i5 8500 6 mag 6 szál processzor garanciával hibátlan működéssel
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Gondolom ezt is a kattintás procba kell nyomni, vagy esetleg egy új proc kell neki, mert a kattintás-ban nincs dx, dy?
Hogy tudom az adott jeleket összehasonlítani egymással? Az utolsó pontból először 8 irányba kell vizsgálni, hogy van-e ugyanolyan. Ha van, akkor már csak az azt megelőzőt kell nézni. Pl aktuális koord. 5,5; akkor meg kell nézni a 4,4; 4,5; 4,6; 5,4; 5,6; 6,4; 6,5; 6,6; koordinátájú pontokat. Mondjuk ezek közül a 4,4 és az 5,6 koordinátákon van ugyanolyan. Akkor már csak ezekre kell nézni, hogy a 3,3 és 5,7 koordinátákon ugyanolyan van-e. Na de mindezt hogy lehet Tcl-ben?
