C#

스타크래프트 유닛

송현호 2023. 7. 21. 13:05
using System;
using System.Diagnostics.CodeAnalysis;
using System.Security.Cryptography;

namespace HelloWorld
{
    internal class Program
    {
        static void Main(string[] args)
        {
            new App(); //new : 클래스의 인스턴스를 생성하고 생성자를 호출

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

namespace HelloWorld
{
    internal class App
    {
        public App()
        {
        TerranCommandCenter terranCommandCenter = new TerranCommandCenter();
        terranCommandCenter.Liftoff();
        terranCommandCenter.Land();
        Console.WriteLine();

        TerranSCV terranSCV = new TerranSCV();
        terranSCV.Move();
        Console.WriteLine();

        TerranSiegeTank terranSiegeTank = new TerranSiegeTank();
        terranSiegeTank.Move();
        terranSiegeTank.siegemode();
        terranSiegeTank.Move();
        terranSiegeTank.landmode();
        terranSiegeTank.Move();
        }
    }
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace HelloWorld
{
    internal class TerranSCV
    {
        int hp;
        int maxHp = 60;
        int dmg = 6;
        int armor = 0;
        //생성자
        public TerranSCV()
        {
            hp = maxHp;
            Console.WriteLine("SCV가 생성되었습니다.");
            Console.WriteLine("체력 : {0}/{1}",hp,maxHp);
            Console.WriteLine("공격력 : {0}",dmg);
            Console.WriteLine("방어력 {0}",armor);
        }

        public void Move()
        {
            Console.WriteLine("SCV가 이동합니다.");
        }
    }
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace HelloWorld
{
    enum eType
    {
        land,
        siege
    }
    internal class TerranSiegeTank
    {
        int hp;
        int maxHp = 150;
        int dmg = 30;
        int armor = 0;
        eType type;
        public TerranSiegeTank() 
        {
            hp = maxHp;
            type = eType.land;
            Console.WriteLine("시즈탱크가 생성되었습니다.");
        }

        public void Move()
        {
            if (type == eType.land)
            {
                Console.WriteLine("이동 했습니다.");
            }
            else
            {
                Console.WriteLine("이동할 수 없습니다.");
            }
            
        }

        public void siegemode()
        {
            dmg = 70;
            type = eType.siege;
            Console.WriteLine("모드를 변경 했습니다. SiegeMode -> TankMode");
            Console.WriteLine("공격력 30 -> 70 변경되었습니다.");
        }

        public void landmode()
        {
            dmg = 30;
            type = eType.land;
            Console.WriteLine("모드를 변경 했습니다. TankMode -> SiegeMode");
            Console.WriteLine("공격력 30 -> 70 변경되었습니다.");
        }
    }
}

'C#' 카테고리의 다른 글

마린 vs 저글링  (0) 2023.07.21
플레이어 몬스터 무기  (0) 2023.07.21
반복문 for  (0) 2023.07.20
input enum 활용  (0) 2023.07.20
열거형식  (0) 2023.07.20