Skip to content

"Be the Robot" plugin compatibility #361

Description

@naydef

There are servers, including my own server, which have Be the Robot plugin(https://forums.alliedmods.net/showthread.php?t=193067). It's fun to use this plugin, but the boss can use it to change his model to robot or or his class model. The plugin has 3 natives:

/**
 * Checks if a client is a robot.
 *
 * @param client            Index of the client to check.
 * @return                  RobotStatus value of the client; RobotStatus_Human if they're a human, RobotStatus_Robot if they're a robot, RobotStatus_WantsToBeRobot if they want to be a robot, but can't for some reason.
 */
native RobotStatus:BeTheRobot_GetRobotStatus(client);

/**
 * Sets if a client should be robot or not.
 *
 * @param client            Index of the client to set.
 * @param toggle            True to make the client a robot, false to change them back to a human. Skip this argument to toggle instead.
 * @noreturn
 */
native BeTheRobot_SetRobot(client, bool:toggle = bool:2);

/**
 * Uses Be the Robot's "CheckTheRules()" native to check if a client should be allowed to be a robot or not.
 *
 * @param client            Index of the client to check.
 * @return                  True if the client is allowed to be a robot (not dead, allowed class by server, etc.) false otherwise.
 */
native bool:BeTheRobot_CheckRules(client);

The code can be added to MakeBoss timer:

if(BeTheRobot_GetRobotStatus(client))
{
     BeTheRobot_SetRobot(client, false);
}

or it can be added to ff2_external_integration for FF2v2.0. This reminds me why there isn't a forward, which is called when MakeBoss timer is called. It will be useful, when some subplugin want to for example give weapon, set attached particles, etc. I see plugins like shadow93's Blitzkrieg receive his rocket launcher on round start, instead of when the boss spawns.

Edit: Now I see that this plugin doesn't have a forward for example to hook when the boss want to become a robot and block it.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions