Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Byte Array: Map Problem
#6
Client:
Code:
Public Sub SendMap()
  Erase Buffer
  
  Buffer = AddLongToBuffer(Buffer, GetPlayerMap(MyIndex))
  Buffer = AddToBuffer(Buffer, VarPtr(Map), LenB(Map))
    
  Call SendData(Buffer, SMsgMapData)
End Sub
Server:
Code:
Private Sub HandleSMsgMapData(ByVal index As Long, ByVal StartAddr As Long, ByVal ByteLen As Long, ByVal ExtraVar As Long)
  Dim i As Long, MapNum As Long
  Dim Buffer() As Byte
  
  If HasAccess(index, ADMIN_MAPPER) = NO Then Exit Sub
  
  Buffer = FillBuffer(StartAddr, ByteLen)
  MapNum = GetLongFromBuffer(Buffer, True)
  
  Call CopyMemory(ByVal VarPtr(Map(MapNum)), Buffer(0), LenB(Map(MapNum)))
  
  Call SendMapNpcsToMap(MapNum)
  Call SpawnMapNpcs(MapNum)
  
  'Save the map
  Call SaveMap(MapNum)
        
        ' Refresh map for everyone online
        For i = 1 To HighIndex
            If IsPlaying(i) And GetPlayerMap(i) = MapNum Then
                Call PlayerWarp(i, MapNum, GetPlayerX(i), GetPlayerY(i))
            End If
        Next i
End Sub
Reply


Messages In This Thread

Forum Jump:


Users browsing this thread: 1 Guest(s)