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

Показано с 1 по 25 из 789

Тема: Вопросы.

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

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #6

    Re: Вопросы.

    Полная версия, с таблицей достижений:

    Код:
    //$reference "C:\Windows\Microsoft.NET\Framework64\v4.0.30319\System.Xaml.dll"
    //$reference "C:\Windows\Microsoft.NET\Framework64\v4.0.30319\WindowsBase.dll"
    //$reference "C:\Windows\Microsoft.NET\Framework64\v4.0.30319\PresentationFramework.dll"
    
    using System;
    using System.Collections.Generic;
    using System.Globalization;
    using System.IO;
    using System.Windows;
    using maddox.game;
    using maddox.game.world;
    
    public class Mission : AMission
    {
      private void Log(string format, params object[] args)
      {
        GamePlay.gpLogServer(new[] { GamePlay.gpPlayer() }, string.Format(CultureInfo.InvariantCulture, format, args), null);
      }
    
      public override void OnBattleInit()
      {
        base.OnBattleInit();
    
        try
        {
          // Master-mission
          if (true)
          {
            var player = GamePlay.gpPlayer();
            var pscore = PlayerScore.Get(player.Name());
            Log("********Initial PlayerScore {0}", pscore);
          }
    
          // Submission
          Timeout(5, () =>
            {
              var player = GamePlay.gpPlayer();
              var pscore = PlayerScore.Get(player.Name());
              pscore.KillsGnd++;
              pscore.Score += 10;
              Log("********PlayerScore After Tank Destroyed {0}", pscore);
            });
    
          // Another submission
          Timeout(10, () =>
          {
            var player = GamePlay.gpPlayer();
            var pscore = PlayerScore.Get(player.Name());
            pscore.KillsAir++;
            pscore.Score += 50;
            Log("********PlayerScore After Aircraft Killed {0}", pscore);
          });
    
        }
        catch (Exception error)
        {
          Log("********EXCEPTION: {0}", error);
        }
      }
    
      class PlayerScore
      {
        public string Name { get; private set; }
        public double Score { get; set; }
        public int KillsAir { get; set; }
        public int KillsGnd { get; set; }
    
        public override string ToString()
        {
          return string.Format(CultureInfo.InvariantCulture,
            "Name:{0} Score:{1} KillsAir/Ground: {2}/{3}", Name, Score, KillsAir, KillsGnd);
        }
    
        public static PlayerScore Get(string pname)
        {
          if (Application.Current == null)
          {
            new Application();
          }
    
          string token = "AF2505FCA";
          Dictionary<string, PlayerScore> table = null;
    
          if (Application.Current.Properties.Contains(token))
          {
            table = (Dictionary<string, PlayerScore>)Application.Current.Properties[token];
          }
          else Application.Current.Properties.Add(token, table = new Dictionary<string, PlayerScore>());
    
          PlayerScore pscore = null;
          if (table.TryGetValue(pname, out pscore) == false)
          {
            table.Add(pname, pscore = new PlayerScore() { Name = pname });
          }
    
          return pscore;
        }
      }
    }
    Крайний раз редактировалось Octocat; 09.01.2012 в 14:45.

Ваши права

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