View Full Version : Remove money from client
louis1016
02-27-2012, 02:20 PM
I'm trying to figure out how to remove a certain platinum amount from the client in the server code. It looks like m_pp.platinum is what i use to designate the clients platinum but its not recognizing m_pp when i compile. ( error message: 'm_pp' : undeclared identifier) I'm guessing I need to use a #include to another file but I cant figure out which one. Am I doing this wrong?
Derision
02-27-2012, 02:49 PM
m_pp is a private member of the Client class (see zone/client.h), so if you were trying to manipulate m_pp.platinum within a method/function of the Client class, it should work.
If you are trying to do this from within a method from another class, then you would need a pointer to a client object, then you could use
Client::TakeMoneyFromPP(uint64 copper, bool updateclient=false);
If you need further pointers, I would need to know where you are trying to insert this code into the existing source.
louis1016
02-27-2012, 03:39 PM
I'm trying to add a check and plat removal for spawning a bot, I just cant figure out how to use the above takemoneyfrompp to check for the clients pp amount and then to remove the pp. I want to set the price equal to the clients level. This is all within bot.cpp
Derision
02-27-2012, 03:50 PM
Well, if you want to do it where the #bot spawn command is processed in bot.cpp, you could add this around line 12424:
if(!c->HasMoney(c->GetLevel() * 1000))
{
c->Message(13, "You don't have enough money to spawn a bot.");
return;
}
c->TakeMoneyFromPP(c->GetLevel() * 1000, true);
That would go just before the existing line:
Bot* TempBot = LoadBot(botId, &TempErrorMessage);
At that point, the variable 'c' is a pointer to the client that is trying to spawn the bot.
Note that the HasMoney/TakeMoneyFromPP methods take copper as an argument, so 1000 is 1 platinum.
louis1016
02-27-2012, 03:52 PM
awesome, thanks a lot!
louis1016
02-27-2012, 04:45 PM
I'm trying to use updateclient=true but updateclient isnt recognized, any way I can update the client money after the bot has spawned?
EDIT - NM i figured it out, just saw you updated your posted code, thanks again
vBulletin® v3.8.11, Copyright ©2000-2025, vBulletin Solutions Inc.