[VB6]Galgje

Pagina: 1
Acties:
  • 496 views sinds 30-01-2008
  • Reageer

  • Thandor
  • Registratie: Juni 2002
  • Laatst online: 10:37

Thandor

SilverStreak

Topicstarter
Ik ben bezig met het programmeren van hangman/galgje in VB6.0

Dit ging tot nu toe prima. Als je op een letter klikt dat wel in het
woord zit dan laat zet hij de letter in een vakje eronder.
Afbeeldingslocatie: http://img105.exs.cx/img105/7558/VBGalgje.jpg
Het woord is cavia, de goede letters komen wel in de vakjes

Maar wanneer een letter niet in het woord zit dan gaat het fout :/ .
Het woord bestaat uit 5 letters. Opgedeeld in W1, W2, W3, W4 en W5.
Als een letter er 5 keer niet in zit (Bv. de letter B) dan moet hij dat
registreren als 1 fout.
Ik was hier al een beetje mee aan het klooien :
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Dim w1 As String
Dim w2 As String
Dim w3 As String
Dim w4 As String
Dim w5 As String

woord = "cavia"

w1 = Left(woord, 1)
w2 = Mid(woord, 2, 1)
w3 = Mid(woord, 3, 1)
w4 = Mid(woord, 4, 1)
w5 = Right(woord, 1)

If w1 = "b" Then letter = "True" Else letter1 = "False"
If w2 = "b" Then letter = "True" Else letter1 = "False"
If w3 = "b" Then letter = "True" Else letter1 = "False"
If w4 = "b" Then letter = "True" Else letter1 = "False"
If w5 = "b" Then letter = "True" Else letter1 = "False"
If letter = "True" Then If w1 = "b" Then Text1.Text = "b"
If letter = "True" Then If w2 = "b" Then Text2.Text = "b"
If letter = "True" Then If w3 = "b" Then Text3.Text = "b"
If letter = "True" Then If w4 = "b" Then Text4.Text = "b"
If letter = "True" Then If w5 = "b" Then Text5.Text = "b"

Dit is het eerste stukje. Deze code staat onder de knop met de letter "B".
Hij kijkt eerst of de B in in het woord zit. Zo ja, dan wordt de variable Letter op True gezet.
Als letter op True staat en W1 is "B" dan zet hij in één van de tekstvakken de letter.

Dat gaat allemaal wel goed, de code is slecht geschreven maar ik ben maar een beginner ;).

Als een letter niet in het woord zit moet hij dat registreren als 1 fout. Die code krijg ik niet voor elkaar.
code:
1
2
3
4
5
6
7
If letter1 = "False" And foutgehad = "false" Then If Line11.Visible = "False" Then Line11.Visible =  True And foutgehad = "true"
If letter1 = "False" And foutgehad = "false" Then If Line6.Visible = "False" Then Line6.Visible = True And foutgehad = "true"
If letter1 = "False" And foutgehad = "false" Then If Line4.Visible = "False" Then Line4.Visible = True And foutgehad = "true"
If letter1 = "False" And foutgehad = "false" Then If Line5.Visible = "False" Then Line5.Visible = True And foutgehad = "true"
If letter1 = "False" And foutgehad = "false" Then If Line3.Visible = "False" Then Line3.Visible = True And foutgehad = "true"
If letter1 = "False" And foutgehad = "false" Then If Line1.Visible = "False" Then Line1.Visible = True And foutgehad = "true"
If letter1 = "False" And foutgehad = "false" Then If Line2.Visible = "False" Then Line2.Visible = True And foutgehad = "true"

Dat is mijn "code" ;). Volgens mij klopt er geen hol van, ik heb er al aardig wat mee liggen klooien maar ik kom er maar niet uit 8)7

Wie o wie kan mij verder helpen :?

Die layout gaat wel flink naar de knoppen met mijn mooie code :+ , is daar nog iets aan te doen :?

[ Voor 13% gewijzigd door Thandor op 04-11-2004 15:13 ]

Profiel | https://thandor.net - hardware
And the rest of us would be carousing the aisles, stuffing baloney.


Verwijderd

Ik vraag me af, ik vind dit erg moeilijk "onderhoudbaar". Waarom werk je niet met Instr()?

positie_letter = Instr(1, volledig_woord, gezochte_letter)

code:
1
2
3
4
5
6
7
8
9
10
Dim letter as String
Dim woord As String

letter = "b"
woord = "cavia"
If Instr(1, woord, letter) > 0 then
   ' goed gegaan.
Else
   ' letter komt niet voor in het woord.
End If


Ik hoop dat je hier iets aan hebt!

[ Voor 62% gewijzigd door Verwijderd op 04-11-2004 14:47 ]


  • PaulZ
  • Registratie: Augustus 2004
  • Laatst online: 21-05-2024
Ik heb even heel snel gekeken naar jouw code.
1. Volgens mij kan je de functie INSTR gebruiken om te kijken of een letter in een woord zit.
2. ...Then Line11.Visible = True And foutgehad = "true". Ik begrijp wat je wilt doen, maar VB6 interpreteert dit anders. Regels afbreken in:
If.... Then
Line11.Visible = True
foutgehad = "true"
End If

Misschien dat dat helpt

[ Voor 4% gewijzigd door PaulZ op 04-11-2004 14:49 . Reden: Alweer te laat! UrinatinventuM was me voor... ]

Vlinders moet je volgen, niet vangen...


Verwijderd

Het is echt waardeloze code. Of een teken in een string voorkomt, controleer je met de IndexOf method van het String object.

Verder moet je dus nooit vijf keer een vrijwel dezelfde variabele declareren, dan kun je beter een array, of een ArrayList of iets soortgelijks te gebruiken.

[edit]
En toen bedacht ik me dat VB6 toch behoorlijk anders is dan .NET ;) Neemt niet weg dat je natuurlijk gewoon in de class library moet kijken :)

[ Voor 23% gewijzigd door Verwijderd op 04-11-2004 14:53 ]


Verwijderd

Verder denk ik dat je je Lines in een control array moet gooien. Dat doe je als volgt: Maak 2 lijnen aan op je Form en noem ze allebei GalgLijn. Dan komt VB6 met de vraag of je er een control array van wilt maken.

Je lijnen zijn dat op te roepen door GalgLijn(aantalfouten).Visible = True te zetten.

Op het moment dat er in mijn code hierboven (met de Instr) een fout wordt ontdekt, aantalfouten verhogen en daarna GalgLijn(aantalfouten) instellen.

Verwijderd

Verwijderd schreef op 04 november 2004 @ 14:50:
Of een teken in een string voorkomt, controleer je met de IndexOf method van het String object.
VB6.0 ;)

  • Thandor
  • Registratie: Juni 2002
  • Laatst online: 10:37

Thandor

SilverStreak

Topicstarter
Ik zal het proberen. :)
De reden dat ik geen Instr() heb gebruikt komt gewoon omdat ik die code niet ken ;)

"control array" heb ik ook nog nooit gebruikt in VB6 maar ik zal wel even googlen e.d. :)

update
code:
1
2
3
4
5
6
7
8
9
10
Dim letter as String
Dim woord As String

letter = "b"
woord = "cavia"
If Instr(1, woord, letter) > 0 then
   msgbox "goed gegaan."
Else
   msgbox "letter komt niet voor in het woord."
End If

Met deze code krijg ik een msgbox "Goed gegaan" als er één van de letters in het woord voorkwam.
Alleen krijg ik het nog niet voorelkaar om dan een letter in het goede tekst vakje te zetten.
Ik heb nl. 5 textbox'en. Text1 t/m Text5.
De oude code werkt niet, aangezien ik dan weer met W1 t/m W5 moet werken. Dat was volgens mij niet de bedoeling, iig zou het beter moeten kunnen.

De 2 "Galglijnen" heb ik gemaakt en VB kwam inderdaad met de melding of ik een control array wou maken :)

Met google heb ik Dit gevonden. Dat ziet er wel interessant uit maar ik heb eigenlijk geen idee hoe ik die code in mijn progsel moet zetten. :X

Ondanks alles ben ik mij toch nog even gaan verdiepen in de W1 t/m W5 mogelijkheid:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
If w1 = "i" Then letter = "True" Else letter1 = False
If w2 = "i" Then letter = "True" Else letter1 = False
If w3 = "i" Then letter = "True" Else letter1 = False
If w4 = "i" Then letter = "True" Else letter1 = False
If w5 = "i" Then letter = "True" Else letter1 = False
If letter = "True" Then If w1 = "i" Then Text1.Text = "i"
If letter = "True" Then If w2 = "i" Then Text2.Text = "i"
If letter = "True" Then If w3 = "i" Then Text3.Text = "i"
If letter = "True" Then If w4 = "i" Then Text4.Text = "i"
If letter = "True" Then If w5 = "i" Then Text5.Text = "i"
If Not w1 = "i" Then fout = "true"
If Not w2 = "i" Then fout = "true"
If Not w3 = "i" Then fout = "true"
If Not w4 = "i" Then fout = "true"
If Not w5 = "i" Then fout = "true"
If w1 = "i" Then fout = "false"
If w2 = "i" Then fout = "false"
If w3 = "i" Then fout = "false"
If w4 = "i" Then fout = "false"
If w5 = "i" Then fout = "false"
If fout = "True" Then If Line11.Visible = "False" Then Line11.Visible = "True"
If fout = "true" Then If Line6.Visible = "False" Then Line6.Visible = "True"


Dit werkt nu bijna, alleen tekent hij alle onderdelen van hangman als er 1 foutje is. Na één ding tekenen zou hij dus moeten stoppen.

[ Voor 115% gewijzigd door Thandor op 04-11-2004 15:31 ]

Profiel | https://thandor.net - hardware
And the rest of us would be carousing the aisles, stuffing baloney.


  • Lorn
  • Registratie: Maart 2000
  • Laatst online: 13-01 11:03

Lorn

I have a bad feeling...

De bovenstaande oplossing met InStr helpt je wel op weg maar is niet helemaal compleet. Je moet er namelijk nog even rekening mee houden dat een woord meerdere keren dezelfde letter kan hebben. Je moet dus de InStr net zolang blijven doen totdat de functie als resultaat geeft dat de letter niet meer is gevonden. Je zult dus de Start parameter van de InStr functie moeten gaan gebruiken.

Succes!

  • Lorn
  • Registratie: Maart 2000
  • Laatst online: 13-01 11:03

Lorn

I have a bad feeling...

Wat je kunt doen is een control array aanmaken van editboxen. Je hebt dan bijvoorbeeld 5 editboxen met de indexen 0 t/m 4. Als je nou InStr gebruikt krijg je de positie in de string terug waar de letter staat. Nu is de eerste positie in de string positie 1 dus moet je een kleine correctie toepassen (-1) om de positie in de string te vertalen naar een editbox.

Is dat nog een beetje te volgen?

  • Thandor
  • Registratie: Juni 2002
  • Laatst online: 10:37

Thandor

SilverStreak

Topicstarter
Editbox, die staat volgens mij niet in mijn lijstje met knoppen aan de linkerkant, of ik kijk totaal verkeerd ;).

Verder is het verhaal wel wat onduidelijk aangezien er veel termen rondvliegen die ik niet ken. Maar daar is Google voor uitgevonden dus ik zal wel even zoeken wat ze betekenen :)

[ Voor 46% gewijzigd door Thandor op 04-11-2004 16:00 ]

Profiel | https://thandor.net - hardware
And the rest of us would be carousing the aisles, stuffing baloney.


  • Lorn
  • Registratie: Maart 2000
  • Laatst online: 13-01 11:03

Lorn

I have a bad feeling...

Sorry voor de verwarring, ik bedoelde textbox.

Verwijderd

Je kan ook nog de text knoppen in een array stoppen. Dan kan je makkelijk een letter verbergen of disabelen als er op geklikt is

  • Lorn
  • Registratie: Maart 2000
  • Laatst online: 13-01 11:03

Lorn

I have a bad feeling...

Ik heb net een galgje gemaakt, code helemaal gedocumenteerd. Als je wilt kan ik de code online zetten. Maar misschien is het wel leuker om er naar te kijken als je je eigen versie werkend hebt.

Heb inderdaad, zoals de post boven me al suggereerde, ook de knoppen in een control array gezet.

  • GigaDave56
  • Registratie: Juni 2001
  • Laatst online: 13:17
Het zou enorm helpen als je je code wat zou structureren, NOFI :) In elke regel staat wel If w1 = "i" (dan wel not i), gebruik dan nette if-then-else codeblokken. Klein voorbeeldje:


Visual Basic:
1
2
3
4
5
6
7
8
If w1 = "i" then
    letter = "True"
    Text1.Text = "i"
    fout = "false"
else
    letter = "false"
    fout = "true"
end if


Je ziet gelijk dat de opzet van je controle systeem wijzigt. Alle consequenties komen overzichtelijk in één blok code te staan. Ik denk dan dat het probleem van het in een keer tekenen van de hangman vanzelf komt bovendrijven.

Het mooie van array's is daj je een specifiek code blok een x aantal keren kan doorlopen (met een programmalus / loop) voor elk item in de array. Dat scheelt dus een hoop tiepwerk.

[ Voor 8% gewijzigd door GigaDave56 op 04-11-2004 16:34 . Reden: quote's toegevoegd ]

Not so Giga One
> I'd sell my soul for you, babe
> For money to burn, for you
> I'd give you all and have none, babe
> Just to, just to, to have you here by me... [Scooter - Rebel yell]


  • Thandor
  • Registratie: Juni 2002
  • Laatst online: 10:37

Thandor

SilverStreak

Topicstarter
Hmmz, dat met die array's is nog een beetje lastig :P. Met Turbo Pascal 7.0 kwam ik daar vroeger ook niet helemaal uit ;).

Visual Basic:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
button = "i"
If w1 = button Then
    letter = "True"
    Text1.Text = "button"
    fout = "false"
Else
    letter = "false"
    fout = "true"
End If

If w2 = button Then
    letter = "True"
    Text2.Text = button
    fout = "false"
Else
    letter = "false"
    fout = "true"
End If


Ik heb nu een variable gemaakt gemaakt 'button'. Dat scheelt weer werk als ik al die dingen moet kopieren :).
Het werkt wel, nu alleen nog even kijken hoe ik dat met letters doe die fout zijn.
Visual Basic:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
woord = "cavia"

w1 = Left(woord, 1)
w2 = Mid(woord, 2, 1)
w3 = Mid(woord, 3, 1)
w4 = Mid(woord, 4, 1)
w5 = Right(woord, 1)

button = "i"
letter = "false"
fout = "true"
letterifout = "false"
'Letter 1 van 'woord'
If w1 = button Then
    letter = "True"
    Text1.Text = "button"
    fout = "false"
Else
    fout = "true"
End If
'Letter 2 van 'woord'
If w2 = button Then
    letter = "True"
    Text2.Text = button
    fout = "false"
Else
    fout = "true"
End If
'Letter 3 van 'woord'
If w3 = button Then
    letter = "True"
    Text3.Text = button
    fout = "false"
Else
    fout = "true"
End If
'Letter 4 van 'woord'
If w4 = button Then
    letter = "True"
    Text4.Text = button
    fout = "false"
Else
    fout = "true"
End If
'Letter 5 van 'woord'
If w5 = button Then
    letter = "True"
    Text5.Text = button
    fout = "false"
Else
    fout = "true"
End If

If fout = "true" And letter = "false" And Line11.Visible = "False" Then
    If Not letterifout = "true" Then Line11.Visible = "True"
    letterifout = "true"
End If
If fout = "true" And letter = "false" And Line6.Visible = "False" Then
    If Not letterifout = "true" Then Line6.Visible = "True"
    letterifout = "true"
End If
If fout = "true" And letter = "false" And Line4.Visible = "False" Then
    If Not letterifout = "true" Then Line4.Visible = "True"
    letterifout = "true"
End If

Dat is de code die ik nu heb. Als de letter i wel voorkomt wordt de letter gewoon in een textbox gezet.
Als de letter i niet voorkomt dan wordt er, indien de lijn er nog niet is, een lijntje getekend en verspring 'letterifout' op false zodat er niet meer lijnen getekend worden dan nodig is :).

Het is wel zo dat als je 2x op i klikt dat hij ook 2 lijntjes tekent.
Is het zo dat als je met galgje een letter 2x fout hebt geraden dat het als 2 fouten telt of als 1 :?

Verder, bedankt voor iedereen die mij geholpen heeft _/-\o_ . De code ziet er nu een stuk beter uit én het werkt :D

@ Lorn
Volgens mij is mijn code nu goed, maar die van jouw gebruikt arrays en het is wel interessant om te kijken hoe dat in elkaar zit, dus al je hem online kan zetten zou dat mooi zijn :)

[ Voor 158% gewijzigd door Thandor op 04-11-2004 18:01 ]

Profiel | https://thandor.net - hardware
And the rest of us would be carousing the aisles, stuffing baloney.


  • Lorn
  • Registratie: Maart 2000
  • Laatst online: 13-01 11:03

Lorn

I have a bad feeling...

OK, hier is 'ie dan. Let niet teveel op het poppetje, heb alleen maar standaard VB shapes gebruikt :)

Hoop dat de code een beetje duidelijk is, heb geprobeerd om het commentaar zo duidelijk mogelijk te maken. Mochten er nog vragen /opmerkingen zijn dan hoor ik dat uiteraard graag.

Je kunt de applicatie + code hier te downloaden.

  • Lorn
  • Registratie: Maart 2000
  • Laatst online: 13-01 11:03

Lorn

I have a bad feeling...

Kon het niet laten, heb nog ff een versie gemaakt met een wat beter poppetje :)

Hier te downloaden.

[ Voor 5% gewijzigd door Lorn op 04-11-2004 23:19 . Reden: URL aangepast ]


  • Thandor
  • Registratie: Juni 2002
  • Laatst online: 10:37

Thandor

SilverStreak

Topicstarter
Interessante hangman :). Ziet er een stuk beter uit dan die van mij. Mijn poppetje bestaat alleen uit lijnen 8)7 .
Maar goed, grafische dingen maak ik pas als de code zelf goed werkt :)

Het inlezen van woorden uit een .txt bestandje moet ik ook nog doen. Ik zie dat je er een array (arrWords()) voor gebruikt hebt. Daar moet ik mij dan maar eens in verdiepen :)

Hoelang doe je erover om zo'n complete hangman te schrijven :?

Profiel | https://thandor.net - hardware
And the rest of us would be carousing the aisles, stuffing baloney.


  • Thandor
  • Registratie: Juni 2002
  • Laatst online: 10:37

Thandor

SilverStreak

Topicstarter
Jouw link doet het nog steeds niet ;). :o
http://members.home.net/lorn/Tweak/Hangman2.zip --> .net = .nl :*)

http://members.home.nl/lorn/Tweak/Hangman2.zip i.pv. http://members.tweakers.net/lorn/Tweak/Hangman2.zip.


Beetje Tweakers verslaafd :? :+

Verder een mooie Hangman II :). Met statusbalk 8)

[ Voor 32% gewijzigd door Thandor op 04-11-2004 23:21 ]

Profiel | https://thandor.net - hardware
And the rest of us would be carousing the aisles, stuffing baloney.


  • Lorn
  • Registratie: Maart 2000
  • Laatst online: 13-01 11:03

Lorn

I have a bad feeling...

LOL, heb de URL aangepast :) (voor de tweede keer, de .net over het hoofd gezien |:( Idd een beetje Tweakers minded)

Heb er denk ik drie uur over gedaan om te schrijven, documenteren en er een mooi poppetje voor te maken. Vond 't eigenlijk wel heel leuk om te doen.

Maar goed, hoop dat je wat aan de code hebt. Hoor het wel als iets niet duidelijk is.

[ Voor 16% gewijzigd door Lorn op 04-11-2004 23:20 ]


  • Thandor
  • Registratie: Juni 2002
  • Laatst online: 10:37

Thandor

SilverStreak

Topicstarter
Die code is echt heel gedetailleerd. Bij veel dingen staat meteen wat het is zodat ik niet elk regeltje wat ik niet ken op hoef te zoeken :)

Ik ga mij er binnenkort in verdiepen, ik hoop dat ik dan mb.v. deze code, mijn eigen hangman kan verbeteren :).

Ik moet nu helaas nog even wat huiswerk doorkijken aangezien ik morgen een toetsweek heb, gelukkig de laatste toets.

Als mijn hangman wat vorderd en/of ik vragen heb dan laat ik wel weer van mij horen ;) .

Bedankt voor de code, hier kan menig beginnend VB6-Programmeur nog van leren _/-\o_

Profiel | https://thandor.net - hardware
And the rest of us would be carousing the aisles, stuffing baloney.


  • Lorn
  • Registratie: Maart 2000
  • Laatst online: 13-01 11:03

Lorn

I have a bad feeling...

Ben blij te horen dat het commentaar duidelijk is. Heeft vrij veel tijd gekost om het zo gedetaileerd te documenteren. Is dus gelukkig niet voor niks geweest :)

Succes met je toets morgen en met je eigen versie van Hangman. Ben benieuwd naar je eindresultaat!

  • Lorn
  • Registratie: Maart 2000
  • Laatst online: 13-01 11:03

Lorn

I have a bad feeling...

Ontdekte dat er nog een stukje ontbrak van de galg... heb ook nog het commentaar iets uitgebreid. De link van Hangman2 wijst naar de meest recente versie (paar posts hierboven terug te vinden).

  • sopsop
  • Registratie: Januari 2002
  • Laatst online: 12-12 08:48

sopsop

[v] [;,,;] [v]

Ik heb ook even zitten prutsen. Met 3 textboxen en een button op je form kom je een heel eind :)

Op je form moeten staan:
txtTeRadenWoord - een textbox, in deze textbox voor je het te raden woord in.

letter - een textbox ter grootte van 1 letter. Zet de index van deze textbox in de properties van de textbox op 0. Op die manier maak je er een control-array van. Via de code gaan we deze textbox vermenigvuldigen met het aantal letters dat er in het te raden woord zitten.

txtInput - een textbox ter grootte van 1 letter, dit is je inputding. Zorg dat de textbox leeg is (dat geldt trouwens voor alle textboxen).

command1 - een commandbutton die na invoer van het te raden woord de letter textboxjes control array gaat aanmaken (nadat hij eventuele eerdere boxjes weer wegflikkert).

De code van het form:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
Private Sub Command1_Click()
  Dim Lengte As Integer
  Dim i As Integer
  Dim ctl As Control
  letter(0).Text = "*"
  If letter.Count > 1 Then
    For i = 1 To letter.Count - 1
      Unload letter(i)
    Next i
  End If
  Lengte = Len(txtTeRadenWoord.Text)
  For i = 1 To Lengte - 1
    Load letter(i)
    letter(i).Visible = True
    letter(i).Left = letter(i - 1).Left + letter(i - 1).Width + 20
    letter(i).Height = 675
    letter(i).Width = 495
    letter(i).Text = "*"
    letter(i).Font.Size = 24
  Next i
End Sub


Private Sub txtInput_KeyUp(KeyCode As Integer, Shift As Integer)
Dim i As Integer
Dim Found As Boolean
 If txtInput.Text <> "" Then
    Found = False
    For i = 1 To Len(txtTeRadenWoord.Text)
        If Mid(UCase(txtTeRadenWoord.Text), i, 1) = UCase(txtInput.Text) Then
           Found = True
           letter(i - 1).Text = txtInput.Text
        End If
    Next i
    If Not Found Then MsgBox "not found"
 End If
 txtInput.Text = ""
End Sub


That's it. Je moet dan nog wel je "if not found" stukje uitbreiden met de opbouw van de galg. En eventueel de input met txtinput vervangen door jouw namaak toetsenbord.

=edit= ik zie nu dat ik de game hangman over het hoofd heb gezien :D |:(

[ Voor 8% gewijzigd door sopsop op 05-11-2004 11:45 ]


  • Lorn
  • Registratie: Maart 2000
  • Laatst online: 13-01 11:03

Lorn

I have a bad feeling...

OK, ik geef toe, ik ben verslaafd geraakt :)

Met gepaste trots (en schaamte) presenteer ik Hangman 3. Nieuw in deze versie:
- Puntentelling
- Woorden tot maximaal 14 letters
- Code opgesplitst in 1 form en 2 classes
- Meer statistische gegevens
- Nieuwe dictionary met > 750 woorden
- Iets aangepast poppetje

De nieuwe versie is hier te downloaden.

Verwijderd

Nu nog met tijdklok spelen. Maximaal in te stellen aantal seconde om over een letter na te denken.
Verder, best leuk geworden :)

  • Shuisman
  • Registratie: Maart 2004
  • Laatst online: 01-09 10:12
Ik weet niet wat je allemaal hebt gedaan, maar kan dit niet VEEEL kleiner ??

  • Lorn
  • Registratie: Maart 2000
  • Laatst online: 13-01 11:03

Lorn

I have a bad feeling...

SHuisman schreef op 06 november 2004 @ 19:55:
Ik weet niet wat je allemaal hebt gedaan, maar kan dit niet VEEEL kleiner ??
Uhhh... nee? Je kunt de source bekijken, ik zou zeggen doe je best! Op welke punten zou je 't efficienter kunnen schrijven? Volgens mij is het al best klein namelijk.
Verwijderd schreef op 06 november 2004 @ 13:14:
Nu nog met tijdklok spelen. Maximaal in te stellen aantal seconde om over een letter na te denken.
Verder, best leuk geworden :)
Het idee van een tijdklok is wel leuk... zal er eens over nadenken of ik dat ga implementeren.

  • Shuisman
  • Registratie: Maart 2004
  • Laatst online: 01-09 10:12
Shuisman heeft de code ff wat gecleaned van comments :P , nu blijft er 3 pagina's over ofzo, het leken er in het begin wel 8 :| De code lijkt toch wel aardig efficient.

Ik vraag me alleen af, programmeer je altijd met zoveel comments ?, of doe je het om het om je code aan de tweakers duidelijk te maken, misschien een kleine verbetering

ipv:

code:
1
2
3
4
5
6
  stbMain.Panels.Item(spWon).Text = "Gewonnen: " & GameStats.GamesWon & " "
  stbMain.Panels.Item(spLost).Text = "Verloren: " & GameStats.GamesLost & " "
  stbMain.Panels.Item(spPercentage).Text = "Succes %: " & GameStats.WinPercentage & " "
  stbMain.Panels.Item(spWinstreak).Text = "Win reeks: " & GameStats.CurrentStreak & " "
  stbMain.Panels.Item(spMaxStreak).Text = "Langste reeks: " & GameStats.LongestStreak & " "
  stbMain.Panels.Item(spPoints).Text = "Punten: " & GameStats.PointsTotal & " "



code:
1
2
3
4
5
6
7
8
With stbMain.Panels
.Item(spWon).Text = "Gewonnen: " & GameStats.GamesWon & " "
.Item(spLost).Text = "Verloren: " & GameStats.GamesLost & " "
.Item(spPercentage).Text = "Succes %: " & GameStats.WinPercentage & " "
.Item(spWinstreak).Text = "Win reeks: " & GameStats.CurrentStreak & " "
.Item(spMaxStreak).Text = "Langste reeks: " & GameStats.LongestStreak & " "
.Item(spPoints).Text = "Punten: " & GameStats.PointsTotal & " "
End with

  • Lorn
  • Registratie: Maart 2000
  • Laatst online: 13-01 11:03

Lorn

I have a bad feeling...

SHuisman schreef op 07 november 2004 @ 00:04:
Ik vraag me alleen af, programmeer je altijd met zoveel comments ?, of doe je het om het om je code aan de tweakers duidelijk te maken.
Deze code heeft voor mijn doen vrij veel commentaar, er staat veel meer in dan in m'n normale code. Heb het inderdaad gedaan omdat de TS aangaf nog VB te leren. Als ik nog aan het leren was dan zou ik het zelf wel handig vinden als iemand zijn code op deze manier zou voorzien van commentaar.

Wat betreft het gebruik van het With-statement, ben daar zelf niet zo'n voorstander van. Vooral in grotere stukken code vind ik het er niet leesbaarder op worden. Type het liever helemaal uit. Ik denk dat zoiets uiteindelijk toch persoonlijke voorkeur is. Denk niet dat de ene manier echt beter is dan de andere manier.

  • Thandor
  • Registratie: Juni 2002
  • Laatst online: 10:37

Thandor

SilverStreak

Topicstarter
Het heeft een tijdje geduurt, maar ik heb Galgje nu af :).

Het zip bestand met de source code en de gecompileerde versie staat op : http://thandor.sphosting.com/got
De bestandsnaam is Galgje.zip

De code is wel erg rommelig en onoverzichtelijk, voor elke letter heb ik een vrij lang stuk code. Dat had ook makkelijker gekunt door Sub Procedures te gebruiken.
Maar goed, Galgje werkt nu :)

Bedankt iedereenMet name Lorn voor het helpen. _/-\o_

[ Voor 5% gewijzigd door Thandor op 21-11-2004 00:33 ]

Profiel | https://thandor.net - hardware
And the rest of us would be carousing the aisles, stuffing baloney.


  • Haploid
  • Registratie: Maart 2002
  • Laatst online: 29-12-2021

Haploid

Doh!

Verslavend spelletje, hoor. Ik zit al een uur te puzzelen. Wie heeft in vredesnaam een woord als WEZEL verzonnen. Dat is gewoon een gemeen woord. :(

Hey, I came here to be drugged, electrocuted and probed, not insulted.


  • Thandor
  • Registratie: Juni 2002
  • Laatst online: 10:37

Thandor

SilverStreak

Topicstarter
Ah, in elk spel zit wel iets waarvan je denk : " :( " ;).
Als er teveel voorspelbare woorden inzitten word het ook weer te makkelijk. Dat het 5 letter woorden zijn maakt het ook moeilijk vond ik, als je nu een letter aanklikt heb je of niets of 1 letter te pakken( op de "e" na) . Heb je langere letters dan zou je met 1 letter aanklikken meerdere letters kunnen krijgen, waardoor het makkelijker wordt.

Profiel | https://thandor.net - hardware
And the rest of us would be carousing the aisles, stuffing baloney.

Pagina: 1