• 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
С++ / How to terminate further function calls?
#1
Hi everyone! How can I complete a sequence of function calls if I already got the desired result?
Let's say not call onPlayerSpawn in Test2 if I already got what I wanted in Test1? Only if?


Code:
class Test1 : public PlayerSpawnEventHandler
{

public:
    void onPlayerSpawn(IPlayer &player) override
    {
        player.sendClientMessage(Colour::Cyan(), "Hello from the test class...");
    }
};

class Test2 : public PlayerSpawnEventHandler
{

public:
    void onPlayerSpawn(IPlayer &player) override
    {
        player.sendClientMessage(Colour::Cyan(), "Hello from the test2 class...");
    }
};

void Gamemode::onLoad(ICore* c)
{
    core_ = c;
    c->getPlayers().getPlayerConnectDispatcher().addEventHandler(this);
    c->getPlayers().getPlayerSpawnDispatcher().addEventHandler(this);
    c->getPlayers().getPlayerTextDispatcher().addEventHandler(this);

    test1_ = new Test1;
    c->getPlayers().getPlayerSpawnDispatcher().addEventHandler(test1_);

    test2_ = new Test2;
    c->getPlayers().getPlayerSpawnDispatcher().addEventHandler(test2_);
}
  Reply


Forum Jump: