2024/09 33

개인프로젝트 - 텍스트RPG : 상점 구현

상점 기능을 구현하여 아이템을 사고 파는 기능을 만들어주었습니다.해당 내용 구현을 위해 상점을 당담하는 새로운 클래스 Shop 을 추가하였습니다.Character 클래스 변경점 - 경제관련 함수 추가상점에서 돈을 사용해야하기 때문에, 돈과 관련된 함수가 추가되었습니다.//돈 사용public bool UseGold(int usedGold){ if (PlayerGold 돈을 획득할경우에는 PlayerGold 프로퍼티에 값을 추가하는 기능만을 하지만, 돈을 사용할 경우에는 돈이 충분한지 확인하고 사용해야하기 때문에 매개변수와 현재 소지금을 비교하고, 소지금이 충분한 경우에만 돈이 사용됩니다. 또한 이 함수를 통해서 사용 성공, 실패를 판단할 수 있도록 bool 값을 반환하도록 만들어주었습니다. 아이템 구..

개인프로젝트 - 텍스트 RPG : 장비 착용 구현

아이템의 장착과 해제를 구현하였으며, 아이템을 장착하여 스텟이 오르도록 만들어주었습니다. Item 클래스 - 변경점아이템 클래스의 필드 변수들을 모두 속성 형태로 변경하여 외부에서 아이템의 변수값을 수정하지 못하도록 하였으며 아이템 장착 여부를 판단하는 변수를 추가해주었습니다.해당 변수는 생성자를 통하여 객체가 생성될때 false값을 가지게 됩니다.또한 아이템의 가격을 저장하는 프로퍼티가 추가되었습니다.public class Item{ public string Name { get; private set; } public string Description { get; private set; } public ItemType Type { get; private set; } public f..

C#문법 종합반 - 3주차 : 블랙잭 게임 만들기

스네이크게임과 마찬가지로 제공된 코드를 사용하여 블랙잭 게임을 만들어야합니다.제공된 코드는 다음과 같습니다.더보기using System;using System.Collections.Generic;public enum Suit { Hearts, Diamonds, Clubs, Spades }public enum Rank { Two = 2, Three, Four, Five, Six, Seven, Eight, Nine, Ten, Jack, Queen, King, Ace }// 카드 한 장을 표현하는 클래스public class Card{ public Suit Suit { get; private set; } public Rank Rank { get; private set; } public Card..

C# 문법 종합반 - 3주차 : 스네이크 게임 만들기

제공된 코드를 이용하여 스네이크 게임을 제작해야하는 과제입니다.제공 코드는 다음과 같습니다.더보기using System;using System.Collections.Generic;using System.Linq;using System.Threading;class Program{ static void Main(string[] args) { // 뱀의 초기 위치와 방향을 설정하고, 그립니다. Point p = new Point(4, 5, '*'); Snake snake = new Snake(p, 4, Direction.RIGHT); snake.Draw(); // 음식의 위치를 무작위로 생성하고, 그립니다. FoodCreat..

개인프로젝트 - 텍스트 RPG : 시작화면과 인벤토리 시스템

오늘은 게임 시작화면과 인벤토리 시스템을 제작하였습니다. 게임 시작화면TextCreater("게임 시작 ");playerChar.GetItem(itemDb.items[0]);Console.Clear();int input;string anyInput;//본 게임while(true){ TextCreater("마을에 오신것을 환영합니다.\n어떤 행동을 할지 선택해주세요.\n\n"); TextCreater("1.상태창\n2.인벤토리\n3.상점\n4.던전입장\n\n"); TextCreater("행동 입력"); input = InputInt(Console.ReadLine()); if(input == 1) { ViewStatus(); anyInput = C..

개인프로젝트 - 텍스트 RPG : 제작시작과 캐릭터 생성

2024.09.19 - [내일배움캠프/TIL] - 내일배움캠프 5일차 TIL - 텍스트 RPG, 캐릭터 생성까지 내일배움캠프 5일차 TIL - 텍스트 RPG, 캐릭터 생성까지C# 을 사용해서 텍스트 RPG게임을 만드는 개인프로젝트 주간입니다.오늘은 그 시작으로 캐릭터를 생성하고, 게임시작 텍스트를 띄우는데 까지 구현하였습니다. 자세한 내용입니다. 캐릭터 정보gamerscode.tistory.com 해당 내용은 이전 TIL 에서 작성하였기 때문에 대체하도록 하겠습니다

내일배움캠프 6일차 TIL - Null 값을 가질수 없는 struct

문제 발생개인과제 텍스트 RPG 제작중 인벤토리를 만들던중, 인벤토리가 비어있는지 체크하고 빈 슬롯이 있으면 해당 슬롯에 아이템을 넣도록 제작하는데 null 값을 사용할 수 없는 오류가 발생했습니다. 시도해본 것아이템은 제가 만든 구조체로, 이 정보에 ItemId 가 존재하며 생성자를 통해서 아이템을 만들때 아이템의 아이디를 필수적으로 정해주어야 합니다.public struct Item{ public string Name; public string Description; public ItemType Type; public float ItemAttack; public float ItemDefence; public int ItemId; public Item(int id,..

C# 문법 종합반 - 2주차 : 콘솔 게임 만들기

2주차 강의에서는 조건문과 반복문, 배열, 메서드 등에 대해서 배울 수 있었습니다. 2주차의 과제 내용을 정리해보겠습니다. 숫자 맞추기 게임 1~100 사이의 무작위 값이 주어지고, 숫자를 입력하면 무작위 값이 입력한 값보다 높다, 낮다의 힌트를 주어 숫자를 맞추는 게임입니다. 무작위 값은 C#에서 지원하는 Random 클래스를 통해 생성하고, 정답을 맞출때 까지 코드를 반복하여 이런 형태의 게임을 만들 수 있습니다.더보기//숫자맞추기{ // 1~100 사이의 무작위 숫자 생성 int randomNum = new Random().Next(1, 101); //몇회 입력을 시도했는지 저장하는 변수 int inputCounter = 0; Console.WriteLine("1에서 10..

추가내용 : C#에서 추가 클래스를 만드는법

잠깐 C#을 사용하다가 헷갈렸던 내용을 보충하겠습니다. 유니티에서는 별개의 클래스를 만들때 스크립트 파일을 하나 생성함으로써 새로운 클래스를 만들어 줄 수 있었습니다. 하지만 C# 자체를 사용할때에는 어떻게 해야 새로운 클래스를 만들 수 있는지 몰랐습니다.해답은 상단 도구바의 프로젝트 탭에 있었습니다.프로젝트 탭에서 클래스 추가를 누르면 메인 클래스임 Program과 별개로 다른 클래스를 만들 수 있습니다. 클래스 이외에도 인터페이스나 다른 내용을 추가해 줄 수 있습니다.

내일배움캠프 5일차 TIL - 텍스트 RPG, 캐릭터 생성까지

C# 을 사용해서 텍스트 RPG게임을 만드는 개인프로젝트 주간입니다.오늘은 그 시작으로 캐릭터를 생성하고, 게임시작 텍스트를 띄우는데 까지 구현하였습니다. 자세한 내용입니다. 캐릭터 정보를 저장하는 클래스 Character가장 먼저, 별개의 클래스로 Character 클래스를 만들어서 이 클래스에 캐릭터에 관련된 모든 내용을 저장할 예정입니다. namespace TextRPG_SBH{ public enum Jobs { Warrior, Wizard, Theif, Archer } internal class Character { //플레이어 이름 public string UserName { get; priva..