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);
237 if(e.classname ==
"minigame_board_piece")
287 ps_boardsize = mySize;
295 bool highlight =
false;
330 bool draw_pos =
false;
341 if(
try == ps_curr_pos)
348 if(
try == ps_curr_pos)
355 if(
try == ps_curr_pos)
362 if(
try == ps_curr_pos)
370 if ( e.classname ==
"minigame_board_piece" )
375 vector tile_color =
'1 1 1';
378 if(e.netname == ps_curr_pos)
379 if(ps_curr_piece.netname != ps_curr_pos)
385 if(e == ps_curr_piece)
412 if(e.classname ==
"minigame_board_piece")
416 string remaining_text;
418 remaining_text = _(
"All pieces cleared!");
420 remaining_text =
strcat(_(
"Remaining pieces:"),
" ",
ftos(remaining));
422 vector win_pos = pos+
eY*(mySize_y-winfs_y)/2;
425 strcat(_(
"Game over!"),
" ", remaining_text),
431 strcat(_(
"Game over!"),
" ", remaining_text),
451 ts_y = ( mySize_y - 2*player_fontsize_y ) / 2;
454 vector tile_size =
'48 48 0';
460 mypos_y += player_fontsize_y;
468 if(e.classname ==
"minigame_board_piece")
483 mypos_y += player_fontsize_y;
490 drawstring(mypos,sprintf(_(
"Pieces left: %s"),
ftos(remaining)),
'28 28 0',
497string ps_turn_to_string(
int turnflags)
500 return _(
"You are spectating");
503 return _(
"No more valid moves");
506 return _(
"Well done, you win!");
509 return _(
"Jump a piece over another to capture it");
515void ps_make_move(
entity minigame)
520 if(!ps_curr_piece || piece)
524 minigame_cmd(
"move ", ps_curr_piece.netname,
" ", ps_curr_pos);
525 ps_curr_piece =
NULL;
530void ps_set_curr_pos(
string s)
539int ps_client_event(
entity minigame,
string event, ...)
546 ps_curr_piece =
NULL;
547 strcpy(minigame.message, ps_turn_to_string(minigame.minigame_flags));
561 switch ( ...(0,
int) )
568 ps_set_curr_pos(
"a3");
577 ps_set_curr_pos(
"c3");
586 ps_set_curr_pos(
"a1");
595 ps_set_curr_pos(
"a3");
604 ps_make_move(minigame);
611 case "mouse_pressed":
615 ps_client_event(minigame,
"mouse_moved");
616 ps_make_move(minigame);
634 case "network_receive":
638 if ( sent.classname ==
"minigame" )
642 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)