mirror of
https://github.com/dashr9230/SA-MP.git
synced 2026-10-10 03:33:04 +08:00
[server] Implement RegisterRPCs and UnRegisterRPCs
This commit is contained in:
@@ -18,4 +18,25 @@ struct RPCParameters
|
||||
char _gap0; // TODO: RPCParameters
|
||||
};
|
||||
|
||||
/// \def REGISTER_STATIC_RPC
|
||||
/// \ingroup RAKNET_RPC
|
||||
/// Register a C function as a Remote procedure.
|
||||
/// \param[in] networkObject Your instance of RakPeer, RakServer, or RakClient
|
||||
/// \param[in] functionName The name of the C function to call
|
||||
/// \attention 12/01/05 REGISTER_AS_REMOTE_PROCEDURE_CALL renamed to REGISTER_STATIC_RPC. Delete the old name sometime in the future
|
||||
//#pragma deprecated(REGISTER_AS_REMOTE_PROCEDURE_CALL)
|
||||
//#define REGISTER_AS_REMOTE_PROCEDURE_CALL(networkObject, functionName) REGISTER_STATIC_RPC(networkObject, functionName)
|
||||
#define REGISTER_STATIC_RPC(networkObject, functionName) (networkObject)->RegisterAsRemoteProcedureCall((RPC_##functionName),(functionName))
|
||||
|
||||
/// \def UNREGISTER_STATIC_RPC
|
||||
/// \ingroup RAKNET_RPC
|
||||
/// Unregisters a remote procedure call
|
||||
/// RPC member Functions MUST be marked __cdecl! See the ObjectMemberRPC example.
|
||||
/// \param[in] networkObject The object that manages the function
|
||||
/// \param[in] functionName The function name
|
||||
// 12/01/05 UNREGISTER_AS_REMOTE_PROCEDURE_CALL Renamed to UNREGISTER_STATIC_RPC. Delete the old name sometime in the future
|
||||
//#pragma deprecated(UNREGISTER_AS_REMOTE_PROCEDURE_CALL)
|
||||
//#define UNREGISTER_AS_REMOTE_PROCEDURE_CALL(networkObject,functionName) UNREGISTER_STATIC_RPC(networkObject,functionName)
|
||||
#define UNREGISTER_STATIC_RPC(networkObject,functionName) (networkObject)->UnregisterAsRemoteProcedureCall((RPC_##functionName))
|
||||
|
||||
#endif
|
||||
|
||||
@@ -0,0 +1,34 @@
|
||||
// TODO: Implement SAMPRPC.h
|
||||
|
||||
#define RPC_Unk73 "\x73"
|
||||
#define RPC_Unk66 "\x66"
|
||||
#define RPC_Unk76 "\x76"
|
||||
#define RPC_Unk60 "\x60"
|
||||
#define RPC_Unk1F "\x1F"
|
||||
#define RPC_Unk77 "\x77"
|
||||
#define RPC_Unk88 "\x88"
|
||||
#define RPC_Unk61 "\x61"
|
||||
#define RPC_Unk83 "\x83"
|
||||
#define RPC_Unk84 "\x84"
|
||||
#define RPC_Unk8C "\x8C"
|
||||
#define RPC_Unk3E "\x3E"
|
||||
#define RPC_Unk17 "\x17"
|
||||
#define RPC_Unk19 "\x19"
|
||||
#define RPC_Unk36 "\x36"
|
||||
#define RPC_Unk65 "\x65"
|
||||
#define RPC_Unk80 "\x80"
|
||||
#define RPC_Unk81 "\x81"
|
||||
#define RPC_Unk34 "\x34"
|
||||
#define RPC_Unk35 "\x35"
|
||||
#define RPC_Unk6A "\x6A"
|
||||
#define RPC_Unk1A "\x1A"
|
||||
#define RPC_Unk9A "\x9A"
|
||||
#define RPC_Unk32 "\x32"
|
||||
#define RPC_Unk9B "\x9B"
|
||||
#define RPC_Unk74 "\x74"
|
||||
#define RPC_Unk75 "\x75"
|
||||
#define RPC_Unk1B "\x1B"
|
||||
#define RPC_Unk53 "\x53"
|
||||
#define RPC_Unk67 "\x67"
|
||||
#define RPC_UnkA8 "\xA8"
|
||||
#define RPC_UnkB1 "\xB1"
|
||||
@@ -59,6 +59,7 @@
|
||||
// Raknet
|
||||
#include "../raknet/RakServer.h"
|
||||
#include "../raknet/RakNetworkFactory.h"
|
||||
#include "../raknet/SAMPRPC.h"
|
||||
#include "../raknet/GetTime.h"
|
||||
|
||||
// amx
|
||||
@@ -75,6 +76,7 @@ typedef unsigned short VEHICLEID;
|
||||
#include "scrtimers.h"
|
||||
#include "gamemodes.h"
|
||||
#include "filterscripts.h"
|
||||
#include "netrpc.h"
|
||||
#include "playerpool.h"
|
||||
#include "vehiclepool.h"
|
||||
#include "pickuppool.h"
|
||||
|
||||
@@ -0,0 +1,118 @@
|
||||
|
||||
#include "main.h"
|
||||
|
||||
RakServerInterface *pRak=0;
|
||||
|
||||
void Unk66(RPCParameters *rpcParams) {} // TODO: Unk66
|
||||
void Unk76(RPCParameters *rpcParams) {} // TODO: Unk76
|
||||
void Unk60(RPCParameters *rpcParams) {} // TODO: Unk60
|
||||
void Unk1F(RPCParameters *rpcParams) {} // TODO: Unk1F
|
||||
void Unk77(RPCParameters *rpcParams) {} // TODO: Unk77
|
||||
void Unk88(RPCParameters *rpcParams) {} // TODO: Unk88
|
||||
void Unk61(RPCParameters *rpcParams) {} // TODO: Unk61
|
||||
void Unk83(RPCParameters *rpcParams) {} // TODO: Unk83
|
||||
void Unk84(RPCParameters *rpcParams) {} // TODO: Unk84
|
||||
void Unk8C(RPCParameters *rpcParams) {} // TODO: Unk8C
|
||||
void Unk3E(RPCParameters *rpcParams) {} // TODO: Unk3E
|
||||
void Unk17(RPCParameters *rpcParams) {} // TODO: Unk17
|
||||
void Unk19(RPCParameters *rpcParams) {} // TODO: Unk19
|
||||
void Unk36(RPCParameters *rpcParams) {} // TODO: Unk36
|
||||
void Unk65(RPCParameters *rpcParams) {} // TODO: Unk65
|
||||
void Unk80(RPCParameters *rpcParams) {} // TODO: Unk80
|
||||
void Unk81(RPCParameters *rpcParams) {} // TODO: Unk81
|
||||
void Unk34(RPCParameters *rpcParams) {} // TODO: Unk34
|
||||
void Unk35(RPCParameters *rpcParams) {} // TODO: Unk35
|
||||
void Unk6A(RPCParameters *rpcParams) {} // TODO: Unk6A
|
||||
void Unk1A(RPCParameters *rpcParams) {} // TODO: Unk1A
|
||||
void Unk9A(RPCParameters *rpcParams) {} // TODO: Unk9A
|
||||
void Unk32(RPCParameters *rpcParams) {} // TODO: Unk32
|
||||
void Unk9B(RPCParameters *rpcParams) {} // TODO: Unk9B
|
||||
void Unk74(RPCParameters *rpcParams) {} // TODO: Unk74
|
||||
void Unk75(RPCParameters *rpcParams) {} // TODO: Unk75
|
||||
void Unk1B(RPCParameters *rpcParams) {} // TODO: Unk1B
|
||||
void Unk53(RPCParameters *rpcParams) {} // TODO: Unk53
|
||||
void Unk67(RPCParameters *rpcParams) {} // TODO: Unk67
|
||||
void UnkA8(RPCParameters *rpcParams) {} // TODO: UnkA8
|
||||
void Unk73(RPCParameters *rpcParams) {} // TODO: Unk73
|
||||
void UnkB1(RPCParameters *rpcParams) {} // TODO: UnkB1
|
||||
|
||||
//----------------------------------------------------
|
||||
|
||||
void RegisterRPCs(RakServerInterface * pRakServer)
|
||||
{
|
||||
pRak = pRakServer;
|
||||
|
||||
REGISTER_STATIC_RPC(pRakServer, Unk66);
|
||||
REGISTER_STATIC_RPC(pRakServer, Unk76);
|
||||
REGISTER_STATIC_RPC(pRakServer, Unk60);
|
||||
REGISTER_STATIC_RPC(pRakServer, Unk1F);
|
||||
REGISTER_STATIC_RPC(pRakServer, Unk77);
|
||||
REGISTER_STATIC_RPC(pRakServer, Unk88);
|
||||
REGISTER_STATIC_RPC(pRakServer, Unk61);
|
||||
REGISTER_STATIC_RPC(pRakServer, Unk83);
|
||||
REGISTER_STATIC_RPC(pRakServer, Unk84);
|
||||
REGISTER_STATIC_RPC(pRakServer, Unk8C);
|
||||
REGISTER_STATIC_RPC(pRakServer, Unk3E);
|
||||
REGISTER_STATIC_RPC(pRakServer, Unk17);
|
||||
REGISTER_STATIC_RPC(pRakServer, Unk19);
|
||||
REGISTER_STATIC_RPC(pRakServer, Unk36);
|
||||
REGISTER_STATIC_RPC(pRakServer, Unk65);
|
||||
REGISTER_STATIC_RPC(pRakServer, Unk80);
|
||||
REGISTER_STATIC_RPC(pRakServer, Unk81);
|
||||
REGISTER_STATIC_RPC(pRakServer, Unk34);
|
||||
REGISTER_STATIC_RPC(pRakServer, Unk35);
|
||||
REGISTER_STATIC_RPC(pRakServer, Unk6A);
|
||||
REGISTER_STATIC_RPC(pRakServer, Unk1A);
|
||||
REGISTER_STATIC_RPC(pRakServer, Unk9A);
|
||||
REGISTER_STATIC_RPC(pRakServer, Unk32);
|
||||
REGISTER_STATIC_RPC(pRakServer, Unk9B);
|
||||
REGISTER_STATIC_RPC(pRakServer, Unk74);
|
||||
REGISTER_STATIC_RPC(pRakServer, Unk75);
|
||||
REGISTER_STATIC_RPC(pRakServer, Unk1B);
|
||||
REGISTER_STATIC_RPC(pRakServer, Unk53);
|
||||
REGISTER_STATIC_RPC(pRakServer, Unk67);
|
||||
REGISTER_STATIC_RPC(pRakServer, UnkA8);
|
||||
REGISTER_STATIC_RPC(pRakServer, Unk73);
|
||||
REGISTER_STATIC_RPC(pRakServer, UnkB1);
|
||||
}
|
||||
|
||||
//----------------------------------------------------
|
||||
|
||||
void UnRegisterRPCs(RakServerInterface * pRakServer)
|
||||
{
|
||||
UNREGISTER_STATIC_RPC(pRakServer, Unk73);
|
||||
UNREGISTER_STATIC_RPC(pRakServer, Unk66);
|
||||
UNREGISTER_STATIC_RPC(pRakServer, Unk76);
|
||||
UNREGISTER_STATIC_RPC(pRakServer, Unk60);
|
||||
UNREGISTER_STATIC_RPC(pRakServer, Unk1F);
|
||||
UNREGISTER_STATIC_RPC(pRakServer, Unk77);
|
||||
UNREGISTER_STATIC_RPC(pRakServer, Unk88);
|
||||
UNREGISTER_STATIC_RPC(pRakServer, Unk61);
|
||||
UNREGISTER_STATIC_RPC(pRakServer, Unk83);
|
||||
UNREGISTER_STATIC_RPC(pRakServer, Unk84);
|
||||
UNREGISTER_STATIC_RPC(pRakServer, Unk8C);
|
||||
UNREGISTER_STATIC_RPC(pRakServer, Unk3E);
|
||||
UNREGISTER_STATIC_RPC(pRakServer, Unk17);
|
||||
UNREGISTER_STATIC_RPC(pRakServer, Unk19);
|
||||
UNREGISTER_STATIC_RPC(pRakServer, Unk36);
|
||||
UNREGISTER_STATIC_RPC(pRakServer, Unk65);
|
||||
UNREGISTER_STATIC_RPC(pRakServer, Unk80);
|
||||
UNREGISTER_STATIC_RPC(pRakServer, Unk81);
|
||||
UNREGISTER_STATIC_RPC(pRakServer, Unk34);
|
||||
UNREGISTER_STATIC_RPC(pRakServer, Unk35);
|
||||
UNREGISTER_STATIC_RPC(pRakServer, Unk6A);
|
||||
UNREGISTER_STATIC_RPC(pRakServer, Unk1A);
|
||||
UNREGISTER_STATIC_RPC(pRakServer, Unk9A);
|
||||
UNREGISTER_STATIC_RPC(pRakServer, Unk32);
|
||||
UNREGISTER_STATIC_RPC(pRakServer, Unk9B);
|
||||
UNREGISTER_STATIC_RPC(pRakServer, Unk74);
|
||||
UNREGISTER_STATIC_RPC(pRakServer, Unk75);
|
||||
UNREGISTER_STATIC_RPC(pRakServer, Unk1B);
|
||||
UNREGISTER_STATIC_RPC(pRakServer, Unk53);
|
||||
UNREGISTER_STATIC_RPC(pRakServer, Unk67);
|
||||
UNREGISTER_STATIC_RPC(pRakServer, UnkA8);
|
||||
|
||||
pRak = 0;
|
||||
}
|
||||
|
||||
//----------------------------------------------------
|
||||
@@ -0,0 +1,12 @@
|
||||
|
||||
#ifndef SAMPSRV_NETRPC_H
|
||||
#define SAMPSRV_NETRPC_H
|
||||
|
||||
//----------------------------------------------------
|
||||
|
||||
void RegisterRPCs(RakServerInterface *);
|
||||
void UnRegisterRPCs(RakServerInterface *);
|
||||
|
||||
//----------------------------------------------------
|
||||
|
||||
#endif
|
||||
@@ -129,6 +129,30 @@
|
||||
<File
|
||||
RelativePath="..\raknet\GetTime.h">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\raknet\NetworkTypes.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\raknet\NetworkTypes.h">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\raknet\PacketEnumerations.h">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\raknet\RakClient.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\raknet\RakClient.h">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\raknet\RakClientInterface.h">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\raknet\RakNetStatistics.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\raknet\RakNetStatistics.h">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\raknet\RakNetworkFactory.cpp">
|
||||
</File>
|
||||
@@ -153,6 +177,27 @@
|
||||
<File
|
||||
RelativePath="..\raknet\RakServerInterface.h">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\raknet\RakSleep.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\raknet\RakSleep.h">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\raknet\RPCMap.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\raknet\RPCMap.h">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\raknet\RPCNode.h">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\raknet\SimpleMutex.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\raknet\SimpleMutex.h">
|
||||
</File>
|
||||
<Filter
|
||||
Name="amx"
|
||||
Filter="">
|
||||
@@ -220,6 +265,12 @@
|
||||
<File
|
||||
RelativePath=".\netgame.h">
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\netrpc.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\netrpc.h">
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\objectpool.cpp">
|
||||
</File>
|
||||
|
||||
Reference in New Issue
Block a user