C#/수업 과제

캐릭터 Class 만들어오기

Bueong_E 2023. 1. 4. 18:00
반응형
SMALL

 

히드라 + 럴커 를 진화시킬수 있는 선택지

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

namespace Study03
{
    class App
    {
        //생성자 
        public App()
        {
            Hydralisk hdralisk1 = new Hydralisk();
            Console.WriteLine(hdralisk1);

            hdralisk1.Move();
            hdralisk1.unitName = "히드라1호기";
            
            hdralisk1.unitPower = 15;

            Hydralisk hdralisk2 = new Hydralisk();
            Console.WriteLine(hdralisk2);

            hdralisk2.Move();
            hdralisk2.unitName = "히드라2호기";
                      
            hdralisk1.Attack(hdralisk1,hdralisk2);
            hdralisk2.Hit(hdralisk2, hdralisk1);

            
            


            Console.WriteLine();
            Console.WriteLine("히드라 2호기를 럴커로 진화시키시겠습니까? (1/2)");
            string choice = Console.ReadLine();
            int choicenum = Convert.ToInt32(choice);
            if(choicenum == 1)
            {
                Lurker lurker = new Lurker();
                lurker.unitName = "럴커";
                hdralisk2.Change(lurker);
            }
            else if (choicenum == 2)
            {               
                Console.WriteLine(hdralisk2.unitName +"이 죽었습니다.");
            }


            



        }
    }
}

 

히드라

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

namespace Study03
{
    
    class Hydralisk
    {
        public string unitName; 
        public int unitPower = 10;
        public float unitspeed = 1.741f;
        public int unitMaxHp = 80;
        public string unitChange = "럴커";

        // 생성자
        public Hydralisk()
        {
            
            Console.WriteLine("히드라를 생성하였습니다.", unitName);
            Console.WriteLine("공격력 :{0}", unitPower);
            Console.WriteLine("이동속도 :{0}", unitspeed);
            Console.WriteLine("체력 :{0}", unitMaxHp);
            Console.WriteLine("{0} 로 변태 가능한 상태입니다.", unitChange);

        }
        public void Move()
        {
            Console.WriteLine("히드라 리스크를 이동시킵니다.");
        }
        public void Attack(Hydralisk attacker,Hydralisk target)
        {
            Console.WriteLine("{0}로 {0}를 공격시킵니다.", attacker.unitName,target.unitName);
        }
        public void Change(Lurker unitName)
        {
            Console.WriteLine("히드라 리스크를 {0}로 변태 시킵니다.", unitName.unitName);
            Console.WriteLine("{0}가 생성되었습니다.", unitName.unitName);

        }
        public void Hit(Hydralisk target , Hydralisk power)
        {
            Console.WriteLine(this);
            Console.WriteLine("{0}가 피해를 {1} 받았습니다.",target.unitName, power.unitPower);
        }
    }
}

럴커

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

namespace Study03
{
    class Lurker
    {
        public string unitName;
        public int unitPower = 10;
        public float unitspeed = 1.741f;
        public int unitMaxHp = 80;
        public string unitskill = "버로우";

        public Lurker()
        {
            
        }
        public void Move()
        {
            Console.WriteLine("럴커를 이동시킵니다.");
        }
        public void Attack(Hydralisk target)
        {
            Console.WriteLine("럴커로 {0}를 공격시킵니다.", target.unitName);
        }
        public void Skill()
        {
            Console.WriteLine("럴커를 {0}가 버로우를 시전합니다.", unitskill);


        }

    }
}

결과물 (1선택시)

결과물 (2선택시)

 

반응형
LIST