Kirjoittaja: Grez
Kirjoitettu: 02.10.2009 – 02.10.2009
Tagit: koodi näytille, vinkki
Tämä on äärimmäisen yksinkertainen mutta sinänsä täysin toimiva seikkailupeli VB6:lla, jonka varsinainen seikkailu on tietokannassa (Access/mdb). Tässä on esitetty pelkkä ohjelmakoodi. Formin käli ja tietokanta löytyvät erillisestä paketista http://grez.info/putka/feltsu/Seikkailu.zip
Option Explicit Private cn As New ADODB.Connection Private Chapter As Long Private Sub Button_Click(Index As Integer) 'Haetaan actionin toiminta tietokannasta Dim rs As New ADODB.Recordset rs.Open "SELECT [ActionMessage], [ActionTargetChapter] FROM ChapterActions WHERE [Chapter]=" _ & Chapter & " AND [ActionId]=" & Index, cn, adOpenStatic, adLockReadOnly ChapterGUI rs!ActionTargetChapter, rs!ActionMessage rs.Close End Sub Private Sub Form_Load() 'Avataan tietokanta cn.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & App.Path & _ "\Seikkailu.mdb;DefaultDir=;UID=;PWD=;" 'Aloitetaan ChapterGUI 1, "Let the games begin" End Sub Private Sub ChapterGUI(NewChapter As Long, Message As String) Dim Action As Long, ActionFound As Boolean MessageLabel.Caption = Message Chapter = NewChapter Dim rs As New ADODB.Recordset 'Haetaan Chapterin tiedot kannasta rs.Open "SELECT [Name], [Description] FROM Chapters WHERE Id=" & NewChapter, _ cn, adOpenStatic, adLockReadOnly ChapterName.Caption = rs!Name ChapterDescription.Caption = rs!Description rs.Close 'Haetaan Chapterin actionit kannasta rs.Open "SELECT [ActionId], [ActionText] FROM ChapterActions WHERE Chapter=" & NewChapter _ & " ORDER BY [ActionId]", cn, adOpenStatic, adLockReadOnly For Action = 0 To 7 If rs.EOF Then ActionFound = False Else ActionFound = rs!ActionId = Action End If Button(Action).Visible = ActionFound If ActionFound Then If Action > 3 Then Button(Action).Caption = rs!ActionText rs.MoveNext End If Next rs.Close End Sub
Aika hyvältä näyttää. täytyy koklata...