???
Математика на уровне МГУ

Показано с 1 по 8 из 8

Тема: [Скрипт] Сообщение на экран и в чат для оффлана и онлайна

Древовидный режим

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #5
    hehehe 111 Аватар для podvoxx
    Регистрация
    25.08.2008
    Адрес
    Барнаул - Питер
    Возраст
    41
    Сообщений
    4,245

    Re: [Скрипт] Сообщение на экран и в чат для оффлана и онлайна

    Выкладываю свой вариант локализации, основан на массивах. Компактней и читабельней switch..case

    Код:
    using System;
    using System.Collections;
    using maddox.game;
    using maddox.game.world;
    using maddox.GP;
    using System.Collections.Generic;
    using System.IO;
    
    public class Mission : AMission
    {
        //=========================LOCALIZATION=============================
        string[] languageArray = { "en", "ru", "de", "fr", "es", "cs", "it", "pl" };
    	
        //******************Localize Message Method*******************
        private string getLocalizedMessage(string textTranslate)
        {
            
            string[] localizeArray;
            string langIndex = GamePlay.gpPlayer().LanguageName();
            switch (textTranslate)
            {
                case "Welcome to our server.":
                    {
                        localizeArray = new string[]
                        {
                            "Welcome to our server.EN",
                            "Добро пожаловать на наш сервер.RU",
                            "Welcome to our server.DE",
                            "Welcome to our server.FR",
                            "Welcome to our server.ES",
                            "Welcome to our server.CS",
                            "Welcome to our server.IT",
                            "Welcome to our server.PL"
                        };
                        return localizeArray.GetValue(Array.IndexOf(languageArray, langIndex)).ToString();
                    } break;            
            }
            return textTranslate;
        }
        //======================================================================
    
        //******************Send Chat Message Method*******************
        private void sendChatMessageTo(int army, string msg, object[] parms)
        {
            List<Player> Players = new List<Player>();
            //Singleplayer or Dedi Server
            if (GamePlay.gpPlayer() != null)
            {
                if (GamePlay.gpPlayer().Army() == army || army == -1)
                    Players.Add(GamePlay.gpPlayer());
            } // Multiplayer
            if (GamePlay.gpRemotePlayers() != null || GamePlay.gpRemotePlayers().Length > 0)
            {
                foreach (Player p in GamePlay.gpRemotePlayers())
                {
                    if (p.Army() == army || army == -1)
                        Players.Add(p);
                }
            }
            if (Players != null && Players.Count > 0)
                GamePlay.gpLogServer(Players.ToArray(), msg, parms);
        }
    	
    	public override void OnBattleStarted()
        {
            base.OnBattleStarted();
            MissionNumberListener = -1;
    		
    	sendChatMessageTo(-1, getLocalizedMessage("Welcome to our server."), new object[] { });
        }
    }
    Крайний раз редактировалось podvoxx; 11.01.2012 в 10:45.

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •