Added infected planes and fix README.md (thanks to Kikoo and DS)
This commit is contained in:
parent
360390c059
commit
de7f58751f
BIN
Plague.g1a
BIN
Plague.g1a
Binary file not shown.
25
README.md
25
README.md
|
@ -1,9 +1,3 @@
|
|||
# Plague inc
|
||||
|
||||
## Présentation
|
||||
|
||||
### Description du jeu
|
||||
|
||||
Plague inc est un jeu de stratégie où le but est de réduire l'humanité à néant… Simple ? Non ! Il vous faudra manipuler avec dextérité et prudence un virus pour anéantir des humains qui ne sont pas super collaboratifs… Pire, ces petits rigolos veulent sauver leurs peaux et recherchent activement un remède à ce mystérieux virus inconnu !
|
||||
|
||||
### Licence
|
||||
|
@ -12,23 +6,23 @@ La totalité du projet est soumise à la licence GNU General Public Licence v3.0
|
|||
|
||||
## Contrôles
|
||||
|
||||
Lancez le jeu, et pressez n'importe quelle touche pour passer l'écran principal. Une fois sur l'écran représentant la Terre, plusieurs choix s'offrent à vous :
|
||||
Lancez le jeu, et pressez n'importe quelle touche pour passer l'écran principal. Une fois sur l'écran représentant la Terre, plusieurs choix s'offrent à vous :
|
||||
- [OPTN] permet d'afficher / cacher la barre en dessous du monde qui vous affiche vos points ADN et la barre de recherche des humains.
|
||||
- [VARS] permet de passer au gros du jeu : les mutations. Ce menu vous affiche vos points ADN, mais aussi les mutations sélectionnées ainsi que vos point de contagion, de sévérité, et de létalité. Dans ce menu, vous pouvez modifier tout cela.
|
||||
- [x^2] permet d'accéder au menu statistique qui vous affiche les stats sur les humains. La barre symbolise le pourcentage de la popuation totale : donc la somme de toute les barre doit donné une seule barre entière.
|
||||
- [VARS] permet de passer au gros du jeu : les mutations. Ce menu vous affiche vos points ADN, mais aussi les mutations sélectionnées ainsi que vos points de contagion, de sévérité, et de létalité. Dans ce menu, vous pouvez modifier tout cela.
|
||||
- [x^2] permet d'accéder au menu statistique qui vous affiche les stats sur les humains. La barre symbolise le pourcentage de la population totale : donc la somme de toutes les barres doit donner une seule barre entière.
|
||||
|
||||
Dans les menus déplacezz-vous grâce aux touches fléchées, validez avec [SHIFT] et annuler avec [ALPHA].
|
||||
Dans les menus déplacez-vous grâce aux touches fléchées, validez avec [SHIFT] et annulez avec [ALPHA].
|
||||
|
||||
Pour quitter le jeu, allez sur la mappemonde et pressez [EXIT].
|
||||
|
||||
## Mutations
|
||||
|
||||
Dans ce jeu, vous aurez le choix entre plusieurs mutations pour faire le plus de dégât possible parmis les humains ! Comme dans le jeu d'origine, celles-ci sont divisées en 3 catégories : Symptômes, Capacités, et Transmissions.
|
||||
Dans ce jeu, vous aurez le choix entre plusieurs mutations pour faire le plus de dégât possible parmi les humains ! Comme dans le jeu d'origine, celles-ci sont divisées en 3 catégories : Symptômes, Capacités, et Transmissions.
|
||||
|
||||
Toutes les mutations ont plusieurs spécificités :
|
||||
- Contagion qui détermine la proportion de personnes infectées
|
||||
- Sévérité touche la recherche, on peut la comprendre de la manière suivante : si la sévérité est élevée, la maladie est grave, elle entraine par conséquent une recherche active de la part des Humains. La séverité vous permet également de gagner des points ADN plus rapidement.
|
||||
- Létalité détermine le taux de mortalité parmi les infectés… Une létalité élevée fera de votre maladie une veritable machine à tuer, mais cela vous dévoile au grand jour et accèlere la recherche !
|
||||
- Sévérité touche la recherche, on peut la comprendre de la manière suivante : si la sévérité est élevée, la maladie est grave, elle entraine par conséquent une recherche active de la part des Humains. La sévérité vous permet également de gagner des points ADN plus rapidement.
|
||||
- Létalité détermine le taux de mortalité parmi les infectés… Une létalité élevée fera de votre maladie une véritable machine à tuer, mais cela vous dévoile au grand jour et accélère la recherche !
|
||||
- le coût en points ADN.
|
||||
|
||||
Dans le menu de mutation vous avez les statistiques de la mutation sélectionnée. Et entre parenthèses vous avez les modifications effectives. Le nombre entre parenthèses vous indique donc le nombre de points de contagion, sévérité, létalité, vous allez gagner (ou perdre si le nombre est négatif) si vous faites muter votre maladie.
|
||||
|
@ -40,8 +34,9 @@ Comme son nom l'indique, votre maladie aussi puissante soit-elle n'est pas invis
|
|||
|
||||
### Capacités spéciales
|
||||
|
||||
En mutant, votre maladie peut acquérir des capacités. Ces capacités lui permettent de mieux apréhender un milieu ou une situation, ainsi la capacité *Résistance au froid* donne un suplément de vigueur à votre virus dans les pays froid. Cela se traduit par une augmentation plus ou moins forte de la contagion dans ces régions du monde…
|
||||
En mutant, votre maladie peut acquérir des capacités. Ces capacités lui permettent de mieux appréhender un milieu ou une situation, ainsi la capacité *Résistance au froid* donne un supplément de vigueur à votre virus dans les pays froids. Cela se traduit par une augmentation plus ou moins forte de la contagion dans ces régions du monde…
|
||||
|
||||
### Moyens de transmissions
|
||||
|
||||
Votre maladie aura tout le loisir de changer ses moyens de transmission ! Plus ou moins efficaces ceux-ci permettent à votre maladie d'accéder à des caractérestiques intéressantes qui lui permettront de coloniser le monde entier !
|
||||
Votre maladie aura tout le loisir de changer ses moyens de transmission ! Plus ou moins efficaces ceux-ci permettent à votre maladie d'accéder à des caractéristiques intéressantes qui lui permettront de coloniser le monde entier !
|
||||
|
||||
|
|
14
src/core.c
14
src/core.c
|
@ -30,6 +30,9 @@ void next_frame(struct game *current_game)
|
|||
}
|
||||
if (current_game->planes[i]->x == current_game->planes[i]->dest_x && current_game->planes[i]->y == current_game->planes[i]->dest_y)
|
||||
{
|
||||
// Infect the airport
|
||||
if (current_game->planes[i]->is_infected) current_game->grid.data[current_game->planes[i]->x + current_game->planes[i]->y * current_game->grid.width] = 1;
|
||||
|
||||
// Set the new destination
|
||||
current_game->planes[i]->dest_x = current_game->planes[i]->depa_x;
|
||||
current_game->planes[i]->dest_y = current_game->planes[i]->depa_y;
|
||||
|
@ -42,6 +45,14 @@ void next_frame(struct game *current_game)
|
|||
int new_dir = (current_game->planes[i]->direction + 2) % 4;
|
||||
if (!new_dir) new_dir = 4;
|
||||
current_game->planes[i]->direction = new_dir;
|
||||
|
||||
// Infect the plane
|
||||
if (current_game->grid.data[current_game->planes[i]->x + current_game->planes[i]->y * current_game->grid.width] == 1 &&
|
||||
(current_game->mutations_selected[2] == 3 ||
|
||||
current_game->mutations_selected[2] == 2 ||
|
||||
current_game->mutations_selected[2] == 5)) current_game->planes[i]->is_infected = 1;
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -54,7 +65,8 @@ void next_frame(struct game *current_game)
|
|||
current_game->time = 0;
|
||||
|
||||
// Update the game
|
||||
if (current_game->dna < 30) current_game->dna += 1 + floor(current_game->severity / 25);
|
||||
current_game->dna = current_game->dna + 1 + floor(current_game->severity / 25);
|
||||
if (current_game->dna > 30) current_game->dna = 30;
|
||||
if (current_game->research < current_game->limit) current_game->research += current_game->priority;
|
||||
epidemic_simulation(current_game);
|
||||
|
||||
|
|
|
@ -70,6 +70,8 @@ struct plane
|
|||
// Coordinates of the plane's departure
|
||||
int depa_x, depa_y;
|
||||
|
||||
int is_infected;
|
||||
|
||||
};
|
||||
|
||||
//cursor : cursor information for mutations selection
|
||||
|
|
|
@ -6,7 +6,7 @@ const struct mutation symptoms_data[14] =
|
|||
{
|
||||
{10, 10, 0, 2, 0, "NAUSEE"},
|
||||
{15, 10, 0, 10, 0, "VOMISSEMENT"},
|
||||
{10, 10, 0, 3, 0, "TOUX"},
|
||||
{10, 5, 0, 3, 0, "TOUX"},
|
||||
{15, 20, 0, 10, 0, "PNEUMONIE"},
|
||||
{10, 30, 20, 15, 10, "TUMEUR"},
|
||||
{15, 10, 5, 4, 0, "PLAIES"},
|
||||
|
|
10
src/main.c
10
src/main.c
|
@ -35,11 +35,11 @@ int main(void)
|
|||
title_screen();
|
||||
|
||||
// Game statistics
|
||||
struct plane plane_1 = {22, 20, 2, 84, 20, 22, 20};
|
||||
struct plane plane_2 = {34, 20, 3, 34, 44, 34, 20};
|
||||
struct plane plane_3 = {68, 44, 1, 68, 20, 68, 44};
|
||||
struct plane plane_4 = {104, 20, 3, 104, 50, 104, 20};
|
||||
struct plane plane_5 = {68, 44, 4, 34, 44, 68, 44};
|
||||
struct plane plane_1 = {22, 20, 2, 84, 20, 22, 20, 0};
|
||||
struct plane plane_2 = {34, 20, 3, 34, 44, 34, 20, 0};
|
||||
struct plane plane_3 = {68, 44, 1, 68, 20, 68, 44, 0};
|
||||
struct plane plane_4 = {104, 20, 3, 104, 50, 104, 20, 0};
|
||||
struct plane plane_5 = {68, 44, 4, 34, 44, 68, 44, 0};
|
||||
|
||||
|
||||
struct game current_game =
|
||||
|
|
|
@ -125,7 +125,7 @@ int mutation_buy(struct game *current_game, const struct cursor c, const int mut
|
|||
|
||||
// Update
|
||||
update_disease(current_game);
|
||||
current_game->priority += floor((mutation_data->severity + mutation_data->lethality) / 10);
|
||||
current_game->priority += floor((mutation_data->severity + mutation_data->lethality) / 20);
|
||||
|
||||
const char *msg[5] = {"mutation", "achetee", "", "", ""};
|
||||
message(msg);
|
||||
|
|
Loading…
Reference in New Issue