Dans ce défi, vous devez analyser les fichiers de la morgue du jeu roguelike Dungeon Crawl Stone Soup et les exporter vers STDOUT.
Quels sont ces fichiers de morgue ??
Lorsque vous mourez, un fichier texte est généré avec les données de ce personnage à l'intérieur. Vous pouvez voir quel équipement le personnage possédait, ce qui s'est passé au cours des derniers tours et combien de monstres il a tués.
Vous pouvez trouver un exemple de fichier de morgue ici
Le défi
Votre travail consiste à créer un programme qui prend l'un de ces fichiers depuis STDIN, le paralyse et génère les données vers STDOUT.
Pour rendre ce défi un peu plus facile, il vous suffit d'analyser le premier bloc de texte. (jusqu'àThe game lasted <time> (<turns> turns).
Vous devez analyser et produire les informations suivantes:
- Le numéro de version.
- Le score.
- Le nom, le titre, la race et la classe du personnage.
- Le niveau du personnage.
- La cause de la mort / victoire.
- Le nombre de tours que la course a duré.
Exemple:
Dungeon Crawl Stone Soup version <version number> character file.
<score> <name> the <title> (level <level>, 224/224 HPs)
Began as a <race> <class> on Mar 16, 2015.
Was the Champion of the Shining One.
<cause of death/victory>
The game lasted 16:11:01 (<turns> turns).
Cas de test
Cas d'essai 1 - Victoire
Exemple de sortie - Victoire:
Version: 0.16.0-8-gd9ae3a8 (webtiles)
Score: 16059087
Name: Ryuzilla the Conqueror
Character: Gargoyle Berserker
Level: 27
Cause of Death/Victory: Escaped with the Orb and 15 runes on Mar 17 2015!
Turns: 97605
Cas d'essai 2 - Décès
Exemple de sortie - Décès:
Version: 0.16-a0-3667-g690a316 (webtiles)
Score: 462
Name: 8Escape the Ruffian
Character: Bearkin Transmuter
Level: 6
Cause of Death/Victory: Slain by an orc wielding a +0 trident (3 damage) on level 4 of the Dungeon.
Turns: 3698
Règles
- C'est du code-golf donc le code le plus court l'emporte.
- En cas d'égalité, la réponse la plus ancienne l'emporte.
- Pas de failles standard.
- L'entrée de fichier doit provenir de STDIN
- La sortie doit être envoyée à STDOUT
- Les étiquettes avant la sortie (ex.
Turns:
) Sont facultatives.
Version:
ou suffit-elle pour sortir les informations dans le même ordre, une par ligne?