diff options
author | Jesse Luehrs <doy@tozt.net> | 2009-10-02 04:19:46 -0500 |
---|---|---|
committer | Jesse Luehrs <doy@tozt.net> | 2009-10-02 04:19:46 -0500 |
commit | e3b5dc667d87f1a44da79fdfe890c8dba58e37d7 (patch) | |
tree | e45ced134dc628e05fa09d97e36cea08075376ab /lib/Games/SMTNocturne/Fusion/Types.pm | |
parent | 05654677fa26ccb47d540d86d4ade656d77fafac (diff) | |
download | games-smtnocturne-fusion-e3b5dc667d87f1a44da79fdfe890c8dba58e37d7.tar.gz games-smtnocturne-fusion-e3b5dc667d87f1a44da79fdfe890c8dba58e37d7.zip |
sketch out some working data loading
Diffstat (limited to 'lib/Games/SMTNocturne/Fusion/Types.pm')
-rw-r--r-- | lib/Games/SMTNocturne/Fusion/Types.pm | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/lib/Games/SMTNocturne/Fusion/Types.pm b/lib/Games/SMTNocturne/Fusion/Types.pm new file mode 100644 index 0000000..2811902 --- /dev/null +++ b/lib/Games/SMTNocturne/Fusion/Types.pm @@ -0,0 +1,18 @@ +package Games::SMTNocturne::Fusion::Types; +use strict; +use warnings; +use Moose::Util::TypeConstraints; + +enum 'Games::SMTNocturne::Fusion::DemonType' => + qw(Deity Megami Fury Lady Kishin Holy Element Mitama Yoma Fairy Divine + Fallen Snake Beast Jirae Brute Femme Vile Tyrant Night Wilder Haunt + Foul Seraph Wargod Genma Dragon Avatar Avian Raptor Entity Fiend); +enum 'Games::SMTNocturne::Fusion::FusionType' => + qw(deathstone evolve normal special); +subtype 'Games::SMTNocturne::Fusion::DemonList', + as 'ArrayRef[Games::SMTNocturne::Fusion::Demon]'; +coerce 'Games::SMTNocturne::Fusion::DemonList', + from 'ArrayRef[Str]', + via { [map { Games::SMTNocturne::Fusion::Demon->lookup($_) } @$_] }; + +1; |