Freeciv21
Develop your civilization from humble roots to a global empire
script_client.cpp File Reference
#include <cstdarg>
#include <ctime>
#include "lua.h"
#include "tolua.h"
#include "log.h"
#include "section_file.h"
#include "featured_text.h"
#include "api_game_specenum.h"
#include "luascript.h"
#include "tolua_game_gen.h"
#include "tolua_signal_gen.h"
#include "luaconsole_common.h"
#include "tolua_client_gen.h"
#include "script_client.h"
+ Include dependency graph for script_client.cpp:

Go to the source code of this file.

Functions

static void script_client_vars_init ()
 Initialize the game script variables. More...
 
static void script_client_vars_free ()
 Free the game script variables. More...
 
static void script_client_vars_load (struct section_file *file)
 Load the game script variables in file. More...
 
static void script_client_vars_save (struct section_file *file)
 Save the game script variables to file. More...
 
static void script_client_code_init ()
 Initialize the optional game script code (useful for scenarios). More...
 
static void script_client_code_free ()
 Free the optional game script code (useful for scenarios). More...
 
static void script_client_code_load (struct section_file *file)
 Load the optional game script code from file (useful for scenarios). More...
 
static void script_client_code_save (struct section_file *file)
 Save the optional game script code to file (useful for scenarios). More...
 
static void script_client_output (struct fc_lua *fcl, QtMsgType level, const char *format,...)
 Ouput a message on the client lua console. More...
 
static void static void script_client_signal_create ()
 Declare any new signal types you need here. More...
 
bool script_client_do_string (const char *str)
 Parse and execute the script in str. More...
 
bool script_client_do_file (const char *filename)
 Parse and execute the script at filename. More...
 
bool script_client_callback_invoke (const char *callback_name, int nargs, enum api_types *parg_types, va_list args)
 Invoke the 'callback_name' Lua function. More...
 
bool script_client_init ()
 Initialize the scripting state. More...
 
void script_client_free ()
 Free the scripting data. More...
 
void script_client_state_load (struct section_file *file)
 Load the scripting state from file. More...
 
void script_client_state_save (struct section_file *file)
 Save the scripting state to file. More...
 
void script_client_signal_emit (const char *signal_name,...)
 Invoke all the callback functions attached to a given signal. More...
 

Variables

static struct fc_luamain_fcl = nullptr
 Lua virtual machine state. More...
 
static char * script_client_code = nullptr
 Optional game script code (useful for scenarios). More...
 

Function Documentation

◆ script_client_callback_invoke()

bool script_client_callback_invoke ( const char *  callback_name,
int  nargs,
enum api_types *  parg_types,
va_list  args 
)

Invoke the 'callback_name' Lua function.

Definition at line 91 of file script_client.cpp.

◆ script_client_code_free()

static void script_client_code_free ( )
static

Free the optional game script code (useful for scenarios).

Definition at line 136 of file script_client.cpp.

Referenced by script_client_free().

◆ script_client_code_init()

static void script_client_code_init ( )
static

Initialize the optional game script code (useful for scenarios).

Definition at line 131 of file script_client.cpp.

Referenced by script_client_init().

◆ script_client_code_load()

static void script_client_code_load ( struct section_file file)
static

Load the optional game script code from file (useful for scenarios).

Definition at line 145 of file script_client.cpp.

Referenced by script_client_state_load().

◆ script_client_code_save()

static void script_client_code_save ( struct section_file file)
static

Save the optional game script code to file (useful for scenarios).

Definition at line 160 of file script_client.cpp.

Referenced by script_client_state_save().

◆ script_client_do_file()

bool script_client_do_file ( const char *  filename)

Parse and execute the script at filename.

Definition at line 81 of file script_client.cpp.

Referenced by qload_lua_script(), and qreload_lua_script().

◆ script_client_do_string()

bool script_client_do_string ( const char *  str)

Parse and execute the script in str.

Definition at line 71 of file script_client.cpp.

◆ script_client_free()

void script_client_free ( )

Free the scripting data.

Definition at line 256 of file script_client.cpp.

Referenced by client_exit().

◆ script_client_init()

bool script_client_init ( )

Initialize the scripting state.

Definition at line 170 of file script_client.cpp.

Referenced by client_main().

◆ script_client_output()

static void script_client_output ( struct fc_lua fcl,
QtMsgType  level,
const char *  format,
  ... 
)
static

Ouput a message on the client lua console.

Definition at line 214 of file script_client.cpp.

Referenced by script_client_init().

◆ script_client_signal_create()

static void script_client_signal_create ( )
static

Declare any new signal types you need here.

Definition at line 305 of file script_client.cpp.

Referenced by script_client_init().

◆ script_client_signal_emit()

void script_client_signal_emit ( const char *  signal_name,
  ... 
)

Invoke all the callback functions attached to a given signal.

Definition at line 293 of file script_client.cpp.

Referenced by handle_research_info().

◆ script_client_state_load()

void script_client_state_load ( struct section_file file)

Load the scripting state from file.

Definition at line 272 of file script_client.cpp.

◆ script_client_state_save()

void script_client_state_save ( struct section_file file)

Save the scripting state to file.

Definition at line 284 of file script_client.cpp.

◆ script_client_vars_free()

static void script_client_vars_free ( )
static

Free the game script variables.

Definition at line 108 of file script_client.cpp.

Referenced by script_client_free().

◆ script_client_vars_init()

static void script_client_vars_init ( )
static

Initialize the game script variables.

Definition at line 101 of file script_client.cpp.

Referenced by script_client_init().

◆ script_client_vars_load()

static void script_client_vars_load ( struct section_file file)
static

Load the game script variables in file.

Definition at line 115 of file script_client.cpp.

Referenced by script_client_state_load().

◆ script_client_vars_save()

static void script_client_vars_save ( struct section_file file)
static

Save the game script variables to file.

Definition at line 123 of file script_client.cpp.

Referenced by script_client_state_save().

Variable Documentation

◆ main_fcl

◆ script_client_code

char* script_client_code = nullptr
static

Optional game script code (useful for scenarios).

Definition at line 51 of file script_client.cpp.

Referenced by script_client_code_free(), script_client_code_init(), script_client_code_load(), and script_client_code_save().