示例#1
0
 protected string from_pattern(NamePattern.Token[] pattern)
 {
     StringBuilder sb = new StringBuilder ();
     bool first = true;
     foreach (NamePattern.Token tk in pattern)
     {
         if (tk == NamePattern.Token.Consonant)
         {
             Consonant c = new Consonant (this.rand);
             if (first)
             {
                 sb.Append (c.Val.ToUpper ());
                 first = false;
             }
             else
                 sb.Append (c.Val);
         }
         else
         {
             Vowel v = new Vowel (this.rand);
             sb.Append (v.Val);
         }
     }
     return sb.ToString ();
 }
示例#2
0
 protected string generate_string(NameType t)
 {
     if (t == BattleName.NameType.First)
     {
         NamePattern         p  = new NamePattern(5, 8);
         NamePattern.Token[] tp = p.GenerateLogicalPattern(this.rand);
         return(this.from_pattern(tp));
     }
     else
     {
         NamePattern         p  = new NamePattern(5, 13);
         NamePattern.Token[] tp = p.GenerateLogicalPattern(this.rand);
         return(this.from_pattern(tp));
     }
 }
示例#3
0
 protected string generate_string(NameType t)
 {
     if (t == BattleName.NameType.First)
     {
         NamePattern p = new NamePattern(5, 8);
         NamePattern.Token[] tp = p.GenerateLogicalPattern (this.rand);
         return this.from_pattern (tp);
     }
     else
     {
         NamePattern p = new NamePattern(5, 13);
         NamePattern.Token[] tp = p.GenerateLogicalPattern (this.rand);
         return this.from_pattern (tp);
     }
 }