fb:porticula NoPaste
Problem mit Static
Uploader: | DonStevone |
Datum/Zeit: | 13.09.2011 16:39:09 |
Type ManagerUDT
Declare Static Sub NewPos(XPos as Integer, YPos as Integer)
Dim as PlayerUDT Player = PlayerUDT(33, 33, @NewPos)
Dim as FieldManagerUDT FieldManager
Static as UInteger Client
Dim BV as Integer
Declare Constructor(Server as String, Port as UShort)
Declare Static Sub Disconnected(V_TSNEID as UInteger)
Declare Static Sub Connected(V_TSNEID as UInteger)
Declare Static Sub NewData(V_TSNEID as UInteger, ByRef V_Data as String)
Declare Sub Update()
Declare Sub UpdateG()
Declare Sub GClear()
Declare Sub Coll()
End Type
'###############################################################################
Constructor ManagerUDT(Server as String, Port as UShort)
BV = TSNE_Create_Client(Client, Server, Port, @Disconnected, @Connected, @NewData, 60)
If BV <> TSNE_Const_NoError Then
Print "[FEHLER] " & TSNE_GetGURUCode(BV)
Sleep
End -1
End If
End Constructor
'###############################################################################
Sub ManagerUDT.Disconnected(ByVal V_TSNEID as UInteger)
End Sub
'###############################################################################
Sub ManagerUDT.Connected(ByVal V_TSNEID as UInteger)
End Sub
'###############################################################################
Sub ManagerUDT.NewData(ByVal V_TSNEID as UInteger, ByRef V_Data as String)
End Sub
'###############################################################################
'###############################################################################
'###############################################################################
Sub ManagerUDT.UpdateG()
Player.G()
FieldManager.G()
End Sub
'###############################################################################
Sub ManagerUDT.Update()
Player.Control()
Coll()
End Sub
'###############################################################################
Sub ManagerUDT.GClear()
Player.GClear
End Sub
'###############################################################################
Sub ManagerUDT.Coll()
Dim as Integer a, b
For a = 1 to 18
For b = 1 to 15
If (Player.X > (a - 1) * 32 And Player.X < a * 32 And Player.Y > (b - 1) * 32 And Player.Y < b * 32 OR _
Player.X + PWidth> (a - 1) * 32 And Player.X + PWidth < a * 32 And Player.Y > (b - 1) * 32 And Player.Y < b * 32 OR _
Player.X > (a - 1) * 32 And Player.X < a * 32 And Player.Y + PHeight > (b - 1) * 32 And Player.Y + PHeight < b * 32 OR _
Player.X + PWidth > (a - 1) * 32 And Player.X + PWidth < a * 32 And Player.Y + PHeight > (b - 1) * 32 And Player.Y + PHeight < b * 32) And _
FieldManager.Area(a, b) > 0 and FieldManager.Area(a, b) < 8 then
Player.X = Player.LastX
Player.Y = Player.LastY
NewPos(Player.X, Player.Y)
Endif
Next b
Next a
End Sub
'###############################################################################
'###############################################################################
'###############################################################################
Static Sub ManagerUDT.NewPos(XPos as Integer, YPos as Integer)
BV = TSNE_Data_Send(Client, STR(XPos))
If BV <> TSNE_Const_NoError Then ?"[FEHLER] " & TSNE_GetGURUCode(BV)
End Sub