Goals(1) = New Tile() - gaslouk - 08-31-2023
Code: (Select All) ReDim Goals(6)
Goals(1) = New Tile()
Goals(1).Symbol = "o"
Expected operator in equation
Help.
thank you.
RE: Goals(1) = New Tile() - TerryRitchie - 08-31-2023
(08-31-2023, 05:42 PM)gaslouk Wrote: Code: (Select All) ReDim Goals(6)
Goals(1) = New Tile()
Goals(1).Symbol = "o"
Expected operator in equation
Help.
thank you. What is "New Tile()"? If that's meant to be a function or UDT the space is not allowed.
RE: Goals(1) = New Tile() - mnrvovrfc - 08-31-2023
(08-31-2023, 05:42 PM)gaslouk Wrote: Code: (Select All) Goals(1) = New Tile()
QB64 doesn't have "new" operator, it doesn't support object-oriented programming. Yet.
RE: Goals(1) = New Tile() - RhoSigma - 08-31-2023
(08-31-2023, 05:42 PM)gaslouk Wrote: Code: (Select All) ReDim Goals(6)
Goals(1) = New Tile()
Goals(1).Symbol = "o"
Expected operator in equation
Help.
thank you.
As mentioned "new" is an operator for object oriented programming languages such as C++, PHP, Javascript etc. which is not possible in QB64(PE), however REDIM can do the job, but "Tile" have to be a user defined TYPE instead of a function.
Code: (Select All) Type Tile
Symbol As String * 1 'use higher numbers if you need more chars
End Type
ReDim Goals(6) As Tile
Goals(1).Symbol = "o"
Goals(2).Symbol = "x"
Goals(3).Symbol = "*"
etc.
RE: Goals(1) = New Tile() - gaslouk - 09-01-2023
Ευχαριστώ πολύ όλη την παρέα.
RE: Goals(1) = New Tile() - SMcNeill - 09-01-2023
Bless you. That sounds rough!
RE: Goals(1) = New Tile() - RhoSigma - 09-01-2023
(09-01-2023, 07:07 AM)gaslouk Wrote: Ευχαριστώ πολύ όλη την παρέα.
You're welcome!
Gern geschehen!
Παρακαλώ!
RE: Goals(1) = New Tile() - gaslouk - 09-01-2023
Code: (Select All) Dim Shared row, col As Integer
Dim Shared levelMap(1 To 12) As String
Dim Shared tileSymbol As String
Sub LoadLabel (numLevel)
' Δημιουργία χάρτη του παιχνιδιού
levelMap(1) = " ############ "
levelMap(2) = " # # "
levelMap(3) = " # # "
levelMap(4) = " # $$ # "
levelMap(5) = " # $ $ # "
levelMap(6) = " # $$ # "
levelMap(7) = " ###############"
levelMap(8) = "# #"
levelMap(9) = "# #"
levelMap(10) = "# #"
levelMap(11) = "# #"
levelMap(12) = "############### "
' Διασχίστε τον χάρτη και ορίστε τα χαρακτηριστικά των πλακιδίων
For row = 1 To MapHeight
For col = 1 To MapWidth
tileSymbol = MID(levelMap(row), col, 1)
MapTiles(col, row).Symbol = tileSymbol
MapTiles(col, row).IsBox = 0
MapTiles(col, row).IsGoal = 0
If tileSymbol = "$" Then
MapTiles(col, row).IsBox = 1
ElseIf tileSymbol = "." Then
MapTiles(col, row).IsGoal = 1
End If
Next col
Next row
End Sub
Help.
thank you.
RE: Goals(1) = New Tile() - bplus - 09-01-2023
(09-01-2023, 08:49 AM)gaslouk Wrote: Code: (Select All) Dim Shared row, col As Integer
Dim Shared levelMap(1 To 12) As String
Dim Shared tileSymbol As String
Sub LoadLabel (numLevel)
' Δημιουργία χάρτη του παιχνιδιού
levelMap(1) = " ############ "
levelMap(2) = " # # "
levelMap(3) = " # # "
levelMap(4) = " # $$ # "
levelMap(5) = " # $ $ # "
levelMap(6) = " # $$ # "
levelMap(7) = " ###############"
levelMap(8) = "# #"
levelMap(9) = "# #"
levelMap(10) = "# #"
levelMap(11) = "# #"
levelMap(12) = "############### "
' Διασχίστε τον χάρτη και ορίστε τα χαρακτηριστικά των πλακιδίων
For row = 1 To MapHeight
For col = 1 To MapWidth
tileSymbol = MID(levelMap(row), col, 1)
MapTiles(col, row).Symbol = tileSymbol
MapTiles(col, row).IsBox = 0
MapTiles(col, row).IsGoal = 0
If tileSymbol = "$" Then
MapTiles(col, row).IsBox = 1
ElseIf tileSymbol = "." Then
MapTiles(col, row).IsGoal = 1
End If
Next col
Next row
End Sub
Help.
thank you.
Needed to end with [/code]
RE: Goals(1) = New Tile() - gaslouk - 09-01-2023
(09-01-2023, 09:28 AM)bplus Wrote: (09-01-2023, 08:49 AM)gaslouk Wrote: Code: (Select All) Dim Shared row, col As Integer
Dim Shared levelMap(1 To 12) As String
Dim Shared tileSymbol As String
Sub LoadLabel (numLevel)
' Δημιουργία χάρτη του παιχνιδιού
levelMap(1) = " ############ "
levelMap(2) = " # # "
levelMap(3) = " # # "
levelMap(4) = " # $$ # "
levelMap(5) = " # $ $ # "
levelMap(6) = " # $$ # "
levelMap(7) = " ###############"
levelMap(8) = "# #"
levelMap(9) = "# #"
levelMap(10) = "# #"
levelMap(11) = "# #"
levelMap(12) = "############### "
' Διασχίστε τον χάρτη και ορίστε τα χαρακτηριστικά των πλακιδίων
For row = 1 To MapHeight
For col = 1 To MapWidth
tileSymbol = MID(levelMap(row), col, 1)
MapTiles(col, row).Symbol = tileSymbol
MapTiles(col, row).IsBox = 0
MapTiles(col, row).IsGoal = 0
If tileSymbol = "$" Then
MapTiles(col, row).IsBox = 1
ElseIf tileSymbol = "." Then
MapTiles(col, row).IsGoal = 1
End If
Next col
Next row
End Sub
Help.
thank you.
Needed to end with [/code] Thanks bplus
|