21 if ( e.classname ==
"minigame_board_piece" && e.netname == tile )
30 if( e.classname ==
"minigame_board_piece" )
80 if ( e.classname ==
"minigame_board_piece" )
150 strcpy(piece.netname, pos);
236 if(e.classname ==
"minigame_board_piece")
286 ps_boardsize = mySize;
294 bool highlight =
false;
329 bool draw_pos =
false;
340 if(
try == ps_curr_pos)
347 if(
try == ps_curr_pos)
354 if(
try == ps_curr_pos)
361 if(
try == ps_curr_pos)
369 if ( e.classname ==
"minigame_board_piece" )
374 vector tile_color =
'1 1 1';
377 if(e.netname == ps_curr_pos)
378 if(ps_curr_piece.netname != ps_curr_pos)
384 if(e == ps_curr_piece)
411 if(e.classname ==
"minigame_board_piece")
415 string remaining_text;
417 remaining_text = _(
"All pieces cleared!");
419 remaining_text =
strcat(_(
"Remaining pieces:"),
" ",
ftos(remaining));
421 vector win_pos = pos+
eY*(mySize_y-winfs_y)/2;
423 strcat(_(
"Game over!"),
" ", remaining_text),
429 strcat(_(
"Game over!"),
" ", remaining_text),
448 ts_y = ( mySize_y - 2*player_fontsize_y ) / 2;
451 vector tile_size =
'48 48 0';
457 mypos_y += player_fontsize_y;
465 if(e.classname ==
"minigame_board_piece")
480 mypos_y += player_fontsize_y;
487 drawstring(mypos,sprintf(_(
"Pieces left: %s"),
ftos(remaining)),
'28 28 0',
494string ps_turn_to_string(
int turnflags)
497 return _(
"You are spectating");
500 return _(
"No more valid moves");
503 return _(
"Well done, you win!");
506 return _(
"Jump a piece over another to capture it");
512void ps_make_move(
entity minigame)
517 if(!ps_curr_piece || piece)
521 minigame_cmd(
"move ", ps_curr_piece.netname,
" ", ps_curr_pos);
522 ps_curr_piece =
NULL;
527void ps_set_curr_pos(
string s)
536int ps_client_event(
entity minigame,
string event, ...)
543 ps_curr_piece =
NULL;
544 strcpy(minigame.message, ps_turn_to_string(minigame.minigame_flags));
558 switch ( ...(0,
int) )
565 ps_set_curr_pos(
"a3");
574 ps_set_curr_pos(
"c3");
583 ps_set_curr_pos(
"a1");
592 ps_set_curr_pos(
"a3");
601 ps_make_move(minigame);
608 case "mouse_pressed":
612 ps_client_event(minigame,
"mouse_moved");
613 ps_make_move(minigame);
631 case "network_receive":
635 if ( sent.classname ==
"minigame" )
639 strcpy(sent.message, ps_turn_to_string(sent.minigame_flags));
var entity(vector mins, vector maxs,.entity tofield) findbox_tofield_OrFallback
void minigame_drawcolorcodedstring_trunc(float maxwidth, vector pos, string text, vector fontsize, float theAlpha, int drawflags)
void minigame_show_allspecs(vector boardpos, vector boardsize)
vector minigame_drawstring_wrapped(float maxwidth, vector pos, string text, vector fontsize, vector color, float theAlpha, int drawflags, float align)
void minigame_hud_simpleboard(vector pos, vector mySize, string board_texture)
string minigame_texture(string name)
vector minigame_hud_denormalize_size(vector v, vector pos, vector mySize)
vector minigame_drawcolorcodedstring_wrapped(float maxwidth, vector pos, string text, vector fontsize, float theAlpha, int drawflags, float align)
vector minigame_hud_denormalize(vector v, vector pos, vector mySize)
vector minigame_hud_normalize(vector v, vector pos, vector mySize)
void minigame_drawpic_centered(vector pos, string texture, vector sz, vector color, float thealpha, int drawflags)
#define REGISTER_MINIGAME(name, nicename)
#define minigame_hud_fitsqare(pos, mySize)
#define minigame_cmd(...)
#define FOREACH_MINIGAME_ENTITY(entityvar)
#define drawstring(position, text, scale, rgb, alpha, flag)
#define drawfill(position, size, rgb, alpha, flag)
const float DRAWFLAG_NORMAL
const float DRAWFLAG_ADDITIVE
string entcs_GetName(int i)
#define HUD_Panel_DrawBg()
entity msle_spawn(entity minigame_session, entity e)
string minigame_relative_tile(string start_id, int dx, int dy, int rows, int columns)
void minigame_server_sendflags(entity ent, int mgflags)
int minigame_count_players(entity minigame)
int minigame_tile_letter(string id)
string minigame_tile_name(vector pos, int rows, int columns)
vector minigame_tile_pos(string id, int rows, int columns)
string minigame_tile_buildname(int letter, int number)
int minigame_tile_number(string id)
const int MINIG_SF_UPDATE
strcat(_("^F4Countdown stopped!"), "\n^BG", _("Teams are too unbalanced."))
const int PS_SPECTATOR_TEAM
bool ps_tile_blacklisted(string tile)
bool ps_draw(entity minigame)
void ps_move(entity minigame, entity player, string thepiece, string pos)
entity ps_find_piece(entity minig, string tile)
bool ps_move_piece(entity minigame, entity piece, string pos, int leti, int numb)
void ps_setup_pieces(entity minigame)
bool ps_valid_tile(string tile)
int ps_server_event(entity minigame, string event,...)
bool ps_winning_piece(entity minigame)