C#/연습장

클래스 만들기 연습

Game Client Lee Hwanguk 2023. 1. 4. 18:00
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace study03
{
    class Vulture
    {
        //맴버 변수

        public float moveSpeed=3.145f;
        public SpiderMine mine0;
        public SpiderMine mine1;
        public SpiderMine mine2;
        //현제 마인의 갯수
        public int mineCount;
        //최대 마인의 갯수(변하지않는값)
        public const int MAX_MINE_COUNT = 3;
        //인스턴스가 만들어지면서 초기화된다 ->0
        //맴버변수는 반드시 값을 초기화해야한다(할당)

        //생성자
        public Vulture()
        {
            this.moveSpeed = 3.145f;
            this.mineCount = MAX_MINE_COUNT;
        }

        //맴버 메서드
        void Move()
        {
            Console.WriteLine("벌쳐가 이동했습니다");
        }

        public void InstallMine()
        {
            if (mine0!=null)
            {
                mine0 = null; //마인을 사용하고
                //카운트 감소
                this.mineCount--;
                Console.WriteLine("mine0 을 설치했습니다.{0}/{1}", this.mineCount, MAX_MINE_COUNT);
            }
            else if(mine1!=null)
            {
                mine1 = null;
                Console.WriteLine("mine2 을 설치했습니다.");

            }
            else if(mine2!=null)
            {
                mine2 = null;
                Console.WriteLine("mine2 을 설치했습니다");
            }
            else
            {
                Console.WriteLine("마인이 없습니다.");
            }
            
        }
    }
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace study03
{
    class App
    {
        
        //생성자
        
        public App()
        {
            Vulture vulture = new Vulture();
            Console.WriteLine(vulture.moveSpeed);

            Console.WriteLine("{0}/{1}",this.mineCount, MAX_MINE_COUNT);


            SpiderMine mine0 = new SpiderMine();
            SpiderMine mine1 = new SpiderMine();
            SpiderMine mine2 = new SpiderMine();

            vulture.mine0 = mine0;
            vulture.mine1 = mine1;
            vulture.mine2 = mine2;

            vulture.InstallMine();
            vulture.InstallMine();
            vulture.InstallMine();
            vulture.InstallMine();

        }
        

    }
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace study03
{
    class SpiderMine
    {
        //생성자
        public SpiderMine()
        {
            Console.WriteLine("SpiderMine이 생성되었습니다");
        }
    }
}