Blamite Game Engine - blam!  00296.01.12.21.0102.blamite
The core library for the Blamite Game Engine.
haloscript.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include <string>
4 #include <map>
5 #include <vector>
6 
7 #ifndef BLAM
8 #define BLAM
9 #endif
10 
11 #ifndef HSC
12 #define HSC
13 #endif
14 
15 namespace Blam
16 {
23  {
24  public:
25  std::string name;
26  std::string description;
27  std::string action;
28  };
29 
33  BLAM command_object CreateCommandFromFile(std::string filename);
34 
38  BLAM std::string get_csc_cmd_name(std::string filename);
39 
43  BLAM std::string csc_var_process(std::string const& s);
44 
48  BLAM std::string csc_var_process(std::string const& s, char read_until);
49 }
50 
54 namespace BlamScript
55 {
56  // old garbage below this line, cool new shit above this line
57 
59  // Everything here is used for parsing BlamScript/HaloScript files (.hsc) //
61 
62  //Classes
63 
67  class script_action {
68  public:
69  std::string type;
70  std::vector<std::string> arguments;
71  };
72 
77  public:
78  std::string name;
79  std::string description;
80  std::vector<script_action> actions;
81  };
82 
86  class script_gvar {
87  public:
88  std::string name;
89  std::vector<std::string> arguments;
90  };
91 
95  class script_object {
96  public:
97  std::vector<script_gvar> global_vars;
98  std::vector<script_action> actions;
99  };
100 
101  //Functions
102 
106  HSC cmd_script_object parse_cmd_script(std::string filename); //Reads a script as a command
107 
111  HSC std::string get_cmd_name(std::string filename); //Gets ONLY the command name from a HSC file
112 
116  HSC std::vector<std::string> getCommandsCSC();
117 
121  HSC std::vector<cmd_script_object> getCommandsHSC();
122 
126  HSC std::vector<std::string> get_csc_data();
127 
131  HSC std::vector<cmd_script_object> get_hsc_data();
132 
136  HSC void InitCSC();
137 
141  HSC void InitHSC();
142 }
Blam
Namespace surrounding all major engine components.
Definition: blam_api.h:18
Blam::CreateCommandFromFile
BLAM command_object CreateCommandFromFile(std::string filename)
Definition: command_script.cpp:84
Blam::command_object::description
std::string description
Definition: haloscript.h:26
BlamScript::script_action
Definition: haloscript.h:67
BlamScript::script_gvar::arguments
std::vector< std::string > arguments
Definition: haloscript.h:89
BlamScript::cmd_script_object::name
std::string name
Definition: haloscript.h:78
BlamScript::parse_cmd_script
HSC cmd_script_object parse_cmd_script(std::string filename)
Definition: blamscript.cpp:75
BlamScript::cmd_script_object
Definition: haloscript.h:76
Blam::command_object::name
std::string name
Definition: haloscript.h:25
BlamScript::getCommandsCSC
HSC std::vector< std::string > getCommandsCSC()
Definition: command_script.cpp:20
BlamScript::script_object::global_vars
std::vector< script_gvar > global_vars
Definition: haloscript.h:97
Blam::command_object
Legacy class representing a CommandScript command.
Definition: haloscript.h:22
Blam::command_object::action
std::string action
Definition: haloscript.h:27
BlamScript::script_object
Definition: haloscript.h:95
BlamScript::script_action::arguments
std::vector< std::string > arguments
Definition: haloscript.h:70
BlamScript::script_action::type
std::string type
Definition: haloscript.h:69
BlamScript::get_hsc_data
HSC std::vector< cmd_script_object > get_hsc_data()
Definition: blamscript.cpp:444
Blam::get_csc_cmd_name
BLAM std::string get_csc_cmd_name(std::string filename)
Definition: command_script.cpp:172
BlamScript
Namespace for anything related to BlamScript/HaloScript.
Definition: haloscript.h:54
BlamScript::script_gvar::name
std::string name
Definition: haloscript.h:88
BlamScript::get_csc_data
HSC std::vector< std::string > get_csc_data()
Definition: command_script.cpp:443
BlamScript::getCommandsHSC
HSC std::vector< cmd_script_object > getCommandsHSC()
Definition: blamscript.cpp:20
BlamScript::InitCSC
HSC void InitCSC()
Definition: command_script.cpp:14
BlamScript::script_gvar
Definition: haloscript.h:86
BLAM
#define BLAM
Definition: haloscript.h:8
BlamScript::script_object::actions
std::vector< script_action > actions
Definition: haloscript.h:98
BlamScript::cmd_script_object::description
std::string description
Definition: haloscript.h:79
BlamScript::InitHSC
HSC void InitHSC()
Definition: blamscript.cpp:14
Blam::csc_var_process
BLAM std::string csc_var_process(std::string const &s)
Definition: command_script.cpp:448
BlamScript::get_cmd_name
HSC std::string get_cmd_name(std::string filename)
Definition: blamscript.cpp:387
BlamScript::cmd_script_object::actions
std::vector< script_action > actions
Definition: haloscript.h:80
HSC
#define HSC
Definition: haloscript.h:12