Freeciv-3.3
Loading...
Searching...
No Matches
Functions | Variables
achievements.c File Reference
#include "fcintl.h"
#include "log.h"
#include "rand.h"
#include "shared.h"
#include "citizens.h"
#include "city.h"
#include "culture.h"
#include "game.h"
#include "map.h"
#include "player.h"
#include "spaceship.h"
#include "achievements.h"

Go to the source code of this file.

Functions

void achievements_init (void)
 
void achievements_free (void)
 
int achievement_number (const struct achievement *pach)
 
int achievement_index (const struct achievement *pach)
 
struct achievementachievement_by_number (int id)
 
const charachievement_name_translation (struct achievement *pach)
 
const charachievement_rule_name (struct achievement *pach)
 
struct achievementachievement_by_rule_name (const char *name)
 
struct playerachievement_plr (struct achievement *ach, struct player_list *achievers)
 
bool achievement_check (struct achievement *ach, struct player *pplayer)
 
const charachievement_first_msg (struct achievement *pach)
 
const charachievement_later_msg (struct achievement *pach)
 
bool achievement_player_has (const struct achievement *pach, const struct player *pplayer)
 
bool achievement_claimed (const struct achievement *pach)
 
int get_literacy (const struct player *pplayer)
 

Variables

static struct achievement achievements [MAX_ACHIEVEMENT_TYPES]
 

Function Documentation

◆ achievement_by_number()

struct achievement * achievement_by_number ( int  id)

◆ achievement_by_rule_name()

struct achievement * achievement_by_rule_name ( const char name)

Returns achievement matching rule name or NULL if there is no achievement with such name.

Definition at line 123 of file achievements.c.

Referenced by api_find_achievement_by_name(), tab_achievement::initialize_new_achievement(), tab_achievement::select_achievement(), sg_load_player_main(), sg_load_player_main(), and universal_value_from_str().

◆ achievement_check()

bool achievement_check ( struct achievement ach,
struct player pplayer 
)

Check if player has now achieved the achievement.

Definition at line 182 of file achievements.c.

Referenced by achievement_plr().

◆ achievement_claimed()

bool achievement_claimed ( const struct achievement pach)

Has anybody got the achievement?

Definition at line 377 of file achievements.c.

Referenced by is_achievement_req_active().

◆ achievement_first_msg()

const char * achievement_first_msg ( struct achievement pach)

Return message to send to first player gaining the achievement.

Definition at line 344 of file achievements.c.

Referenced by end_turn().

◆ achievement_index()

int achievement_index ( const struct achievement pach)

Return the achievement index.

Definition at line 86 of file achievements.c.

Referenced by end_turn(), load_command(), load_game_names(), load_ruleset_game(), and tab_achievement::refresh().

◆ achievement_later_msg()

const char * achievement_later_msg ( struct achievement pach)

Return message to send to other players gaining the achievement.

Definition at line 354 of file achievements.c.

Referenced by end_turn().

◆ achievement_name_translation()

const char * achievement_name_translation ( struct achievement pach)

Return translated name of this achievement type.

Definition at line 106 of file achievements.c.

Referenced by api_methods_achievement_name_translation(), report_achievements(), req_text_insert(), universal_name_translation(), and worklist_item_postpone_req_vec().

◆ achievement_number()

int achievement_number ( const struct achievement pach)

Return the achievement id.

Definition at line 76 of file achievements.c.

Referenced by send_ruleset_achievements(), and universal_number().

◆ achievement_player_has()

bool achievement_player_has ( const struct achievement pach,
const struct player pplayer 
)

Has the given player got the achievement?

Definition at line 364 of file achievements.c.

Referenced by is_achievement_req_active(), load_command(), report_achievements(), and sg_save_player_main().

◆ achievement_plr()

struct player * achievement_plr ( struct achievement ach,
struct player_list achievers 
)

Check if some player has now achieved the achievement and return the player in question.

Definition at line 140 of file achievements.c.

Referenced by end_turn().

◆ achievement_rule_name()

const char * achievement_rule_name ( struct achievement pach)

◆ achievements_free()

void achievements_free ( void  )

Free the memory associated with achievements

Definition at line 59 of file achievements.c.

Referenced by game_ruleset_free().

◆ achievements_init()

void achievements_init ( void  )

Initialize achievements.

Definition at line 40 of file achievements.c.

Referenced by game_ruleset_init().

◆ get_literacy()

int get_literacy ( const struct player pplayer)

Literacy score calculated one way. See also get_literacy2() for alternative way.

Definition at line 386 of file achievements.c.

Referenced by achievement_check(), and report_final_scores().

Variable Documentation

◆ achievements