Originally Posted by
hc747
Just because it has no error, does not mean it's correct - post the class, in [ CODE ] [ / CODE ] tags.
Code:
package org.mistex.game;
import org.mistex.game.world.player.Client;
import org.mistex.game.world.player.Player;
import com.rspserver.motivote.MotivoteHandler;
import com.rspserver.motivote.Reward;
public class RewardHandler extends MotivoteHandler<Reward>
{
@Override
public void onCompletion(Reward reward)
{
// SOME OF THIS CODE WILL BE DIFFERENT FOR YOUR SERVER, CHANGE IT ACCORDINGLY. everything to do with motivote will stay the same!
int itemID = -1;
if (reward.rewardName().equalsIgnoreCase("gold"))
{
itemID = 995;
}
if (PlayerHandler.isPlayerOn(reward.username()))
{
Player p = PlayerHandler.getPlayer(reward.username());
if (p != null && p.isActive == true) // check isActive to make sure player is active. some servers, like project insanity, need extra checks.
{
synchronized(p)
{
Client c = (Client)p;
if (c.getItems().addItem(itemID, reward.amount()))
{
c.sendMessage("You've received your vote reward! Congratulations!");
reward.complete();
}
else
{
c.sendMessage("Could not give you your reward item, try creating space.");
}
}
}
}
}
}
Like it doesn't callback in the console to the webhost.