示例#1
0
        public GameScreen(Map gameMap, APlayer a, BPlayer b, CPlayer c, DPlayer d, Form menuForm)
        {
            this.menuForm    = menuForm;
            map              = gameMap;
            aPlayer          = a;
            bPlayer          = b;
            cPlayer          = c;
            dPlayer          = d;
            goldImages       = new Image[4];
            hiddenGoldImages = new Image[4];
            cordNumberGuide  = (squareEdge * 3) / 4;

            goldImages[0]       = global::AltınOyunuCSharp.Properties.Resources.coin5;
            goldImages[1]       = global::AltınOyunuCSharp.Properties.Resources.coin10;
            goldImages[2]       = global::AltınOyunuCSharp.Properties.Resources.coin15;
            goldImages[3]       = global::AltınOyunuCSharp.Properties.Resources.coin20;
            hiddenGoldImages[0] = global::AltınOyunuCSharp.Properties.Resources.hiddenCoin5;
            hiddenGoldImages[1] = global::AltınOyunuCSharp.Properties.Resources.hiddenCoin10;
            hiddenGoldImages[2] = global::AltınOyunuCSharp.Properties.Resources.hiddenCoin15;
            hiddenGoldImages[3] = global::AltınOyunuCSharp.Properties.Resources.hiddenCoin20;
            aPlayerImage        = global::AltınOyunuCSharp.Properties.Resources.playerA_front;
            bPlayerImage        = global::AltınOyunuCSharp.Properties.Resources.playerB_front;
            cPlayerImage        = global::AltınOyunuCSharp.Properties.Resources.playerC_front;
            dPlayerImage        = global::AltınOyunuCSharp.Properties.Resources.playerD_front;
            InitializeComponent();
        }
示例#2
0
        public async Task <ActionResult <DPlayer> > PostDPlayer(DPlayer dPlayer)
        {
            _context.DPlayers.Add(dPlayer);
            await _context.SaveChangesAsync();

            return(CreatedAtAction("GetDPlayer", new { id = dPlayer.playerID }, dPlayer));
        }
示例#3
0
        public static DPlayer InitPlayer(string account, string password, long gamerid)
        {
            DPlayer player = EntityFactory.Create <DPlayer, string, string>(Game.Scene, account, password);

            player.GamerId = gamerid;

            return(player);
        }
示例#4
0
        //public static EPlayer GetByName(string Name)
        //{
        //    return DPlayer.GetByName(Name);
        //}

        public static EPlayer Authenticate(string ComputerID, string ApplicationHash, string Architecture, string Language, string Ip)
        {
            return(DPlayer.Authenticate(new EPlayer()
            {
                ID = ComputerID, Application = (new EApplication()
                {
                    Hash = ApplicationHash
                }), OperatingSystem = Architecture, Language = Language, IP = Ip
            }));
        }
示例#5
0
 public ScoreBoard(APlayer aPlayer, BPlayer bPlayer, CPlayer cPlayer, DPlayer dPlayer, Map map, Form gameForm)
 {
     this.aPlayer  = aPlayer;
     this.bPlayer  = bPlayer;
     this.cPlayer  = cPlayer;
     this.dPlayer  = dPlayer;
     this.map      = map;
     this.gameForm = gameForm;
     InitializeComponent();
 }
示例#6
0
        private void StartGame_Click(object sender, EventArgs e)
        {
            this.Hide();
            int cordX           = Int32.Parse(CordXNum.Text);
            int cordY           = Int32.Parse(CordYNum.Text);
            int costA           = Int32.Parse(aCostNum.Text);
            int costB           = Int32.Parse(bCostNum.Text);
            int costC           = Int32.Parse(cCostNum.Text);
            int costD           = Int32.Parse(dCostNum.Text);
            int targetCostA     = Int32.Parse(aTargetCostNum.Text);
            int targetCostB     = Int32.Parse(bTargetCostNum.Text);
            int targetCostC     = Int32.Parse(cTargetCostNum.Text);
            int targetCostD     = Int32.Parse(dTargetCostNum.Text);
            int moveLenght      = Int32.Parse(MoveLenghtNum.Text);
            int goldRate        = Int32.Parse(GoldNum.Text);
            int privateGoldRate = Int32.Parse(PrivateGoldNum.Text);
            int startGold       = Int32.Parse(StartGoldNum.Text);
            int cGoldShow       = Int32.Parse(cGoldShowNum.Text);

            //Map Oluşturma
            this.map = new Map(cordY, cordX);

            // Player Modelleri //
            this.aPlayer = new APlayer(startGold, "A", 0, 0, costA, moveLenght, targetCostA, cordY, cordX);
            this.bPlayer = new BPlayer(startGold, "B", 0, (cordX - 1), costB, moveLenght, targetCostB, cordY, cordX);
            this.cPlayer = new CPlayer(startGold, "C", (cordY - 1), 0, costC, moveLenght, cGoldShow, targetCostC, cordY, cordX);
            this.dPlayer = new DPlayer(startGold, "D", (cordY - 1), (cordX - 1), costD, moveLenght, targetCostD, cordY, cordX);

            // Map Player Yerleşimi
            this.map.AddPlayer(0, 0, "A");                     //Player A
            this.map.AddPlayer(0, (cordX - 1), "B");           //Player B
            this.map.AddPlayer((cordY - 1), 0, "C");           //Player C
            this.map.AddPlayer((cordY - 1), (cordX - 1), "D"); //Player D

            //Map Altın Yerleşimi
            this.map.AddAllGold(goldRate, privateGoldRate);

            GameScreen game = new GameScreen(this.map, this.aPlayer, this.bPlayer, this.cPlayer, this.dPlayer, this);

            game.Show();
        }
示例#7
0
        public async Task <IActionResult> PutDPlayer(int id, DPlayer dPlayer)
        {
            dPlayer.playerID = id;

            _context.Entry(dPlayer).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!DPlayerExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
示例#8
0
 public async Task EditPlayer(DPlayer player)
 {
     _context.Update(player);
     await _context.SaveChangesAsync();
 }
示例#9
0
 public async Task CreatePlayer(DPlayer player)
 {
     _context.Add(player);
     await _context.SaveChangesAsync();
 }
示例#10
0
		public string GetDPattern( DPlayer d, int playNumber)
		{
			//TODO: write this function
			return "";
		}
示例#11
0
		public void SetDPatternPointerRelative(DPlayer d, int playNumber, byte[] pointer)
		{
			if( pointer != null && pointer.Length > 1 )
			{
				int playerPointer = DEFENSIVE_REACTION_POINTERS + (playNumber*22) + ((int)d * 2);
				MainForm.TheROM[playerPointer]   = pointer[0];
				MainForm.TheROM[playerPointer+1] = pointer[1];
			}
			else
			{
				MessageBox.Show("Argument Error with SetOPatternLocationRelative 'byte[]'");
			}
		}
示例#12
0
		/// <summary>
		/// Sets the pointer for player p on 'playNumber' to 'pointer'.
		/// </summary>
		/// <param name="p"></param>
		/// <param name="playNumber"></param>
		/// <param name="pointer"></param>
		public void SetDPatternPointerRelative(DPlayer d, int playNumber, string pointer)
		{
			try
			{
				int stuff = Int32.Parse(pointer,System.Globalization.NumberStyles.AllowHexSpecifier);
				byte[] bytes = new byte[2];
				byte hi  = (byte)(stuff >> 8);
				byte lo  = (byte)(stuff & 0x00ff);

				bytes[0] = lo;
				bytes[1] = hi;
				SetDPatternPointerRelative(d, playNumber, bytes);
			}
			catch(Exception ex )
			{
				MessageBox.Show(string.Format(
					"ERROR! {0}\nCould not set pointer on play {1} for position {2}\n{3}",
					ex.Message,
					playNumber,
					d,
					ex.StackTrace));
			}
		}
示例#13
0
		/// <summary>
		/// returns the Pointer for player 'd' in string format.
		/// </summary>
		/// <param name="d"></param>
		/// <param name="playNumber"></param>
		/// <returns></returns>
		public string GetDPatternPointerRelativeStr(DPlayer d, int playNumber)
		{
			string  ret = null;
			byte[] pointer = GetDPatternPointerRelative( d, playNumber);
			if( pointer != null && pointer.Length > 1)
			{
				ret = string.Format("{0:x2}{1:x2}",pointer[0], pointer[1]);
			}
			return ret;
		}
示例#14
0
		/// <summary>
		/// Gets the location of d's defensive pattern.
		/// Returns an array of 2 bytes.
		/// </summary>
		/// <param name="d"></param>
		/// <param name="playNumber"></param>
		/// <returns></returns>
		public byte[] GetDPatternPointerRelative(DPlayer d, int playNumber)
		{
			int playerPointer = DEFENSIVE_REACTION_POINTERS + (playNumber*22) +((int)d*2);
			byte lowByte, hiByte;
			byte[] ret = new byte[2];
			lowByte = MainForm.TheROM[playerPointer]; 
			hiByte = MainForm.TheROM[playerPointer+1]; 
			ret[0] = hiByte;
			ret[1] = lowByte;

			return ret;
		}
示例#15
0
		/// <summary>
		/// Gets the location of d's defensive pattern.
		/// </summary>
		/// <param name="d"></param>
		/// <param name="playNumber"></param>
		/// <returns></returns>
		public int GetDPatternPointer(DPlayer d, int playNumber)
		{
			int playerPointer = DEFENSIVE_REACTION_POINTERS + (playNumber*22) +((int)d*2);
			byte lowByte, hiByte;
			
			lowByte = MainForm.TheROM[playerPointer];
			hiByte = MainForm.TheROM[playerPointer+1];

			int patternLoc =  lowByte + (hiByte * 255 ) - 0x2000 + 0x10;
			return patternLoc;
		}