Попытка сделать алфавитный преобразователь с массивами JavaScript

Я пытаюсь создать несколько альтернативных "языков" для ролевой игры, которой я управляю. Это простая замена символов, хотя в некоторых местах один символ может быть заменен на несколько. Как я могу сделать это с массивами JavaScript?

Некоторые примеры:

  1. стихийный

    a b c d e f g h i j k l m n o p q r s t u v w x y z
    
    r n a y f z d u h g t e q b w m i v o k l x j c s p
    
    A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
    
    R N A Y F Z D U H G T E Q B W M I V O K L X J C S P
    
  2. Орк

    a b c d e f g h i j k l m n o p q r s t u v w x y z
    
    c w r p o d y a e b x g k z h q v u s m l j f n t i
    
    A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
    
    C W R P O D Y A E B X G K Z H Q V U S M L J F N T I
    
  3. Язык волхвов

    a b c d e f g h i j k l m n o p q r s t u v w x y z
    
    coa taj nel sa jo yin p g d w m hep qoi uxo lso bei ilok abi zel rol kef fas oel ero ve xo
    
    A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
    
    COA TAJ NEL SA JO YIN P G D W M HEP QOI UXO LSO BEI ILOK ABI ZEL ROL KEF FAS OEL ERO VE XO
    

1 ответ

Попробуйте что-нибудь подобное

<script type="text/javascript">
var lang = {
    normal : {
            'a':0,
            'b':1,
            'c':2,
            'd':3}, 
    elemental : ['r','n','a','y'],
    orkish : ['c','w','r','p'],
    magis : ['coa','taj','nel','sa']
};

console.log('Normal : bbc');
var _str = 'bbc';

var translate = '';
for(i = 0; i <= _str.length - 1;i++)
{   
    var t = _str[i];
    translate += lang['elemental'][lang['normal'][t]];
}

console.log(translate);


var translate = '';
for(i = 0; i <= _str.length - 1;i++)
{   
    var t = _str[i];
    translate += lang['magis'][lang['normal'][t]];
}
    console.log(translate);

 </script>

Результат в консоли браузера (например, chrome - f12):

Нормальный: Би-би-си

Элементаль: нна

Magis: тайтайнел

Другие вопросы по тегам