1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- #pragma once
- #include <ReferenceCounter.h>
- #include <Text.h>
- #include "Entity.h"
- class ChatCommandParameter;
- class ChatCommand : public virtual Framework::ReferenceCounter
- {
- private:
- Framework::Text name;
- Framework::Text description;
- int securityLevel;
- Framework::RCArray<ChatCommandParameter> params;
- protected:
- void addParam(ChatCommandParameter* param);
- public:
- ChatCommand(
- Framework::Text name, Framework::Text description, int securityLevel);
- virtual void execute(
- Framework::RCArray<Framework::Text> params, Entity* zActor) const = 0;
- const Framework::RCArray<ChatCommandParameter>& getParams() const;
- Framework::Text getName() const;
- Framework::Text getHelp() const;
- int getSecurityLevel() const;
- };
- class ChatCommandParameter : public virtual Framework::ReferenceCounter
- {
- private:
- Framework::Text name;
- Framework::Text description;
- bool optional;
- public:
- ChatCommandParameter(
- Framework::Text name, Framework::Text description, bool optional);
- virtual bool isLegalValue(Framework::Text value) const;
- virtual Framework::Text getDefaultValue(Entity* zActor) const;
- Framework::Text getName() const;
- Framework::Text getDescription() const;
- bool isOptional() const;
- };
|