분류 전체보기
-
내일배움캠프 13일차 TIL - 전투 구현 마무리TIL/C# 2024. 5. 1. 20:38
[학습목표]팀 프로젝트에서 전투 기능 구현을 마무리하고 필수 요구사항 구현을 완료한다.[학습내용]어제 전투기능 중 플레이어 공격 기능 구현을 완료했기 때문에, 오늘은 몬스터의 공격을 구현했다. 플레이어 공격 직후에 몬스터 공격 차례가 오기 때문에, AttackScene이 끝날 때 MonsterAttackScene을 호출했다.using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace OceanStory.Scenes{ internal class MonsterAttackScene : Scene { public override voi..
-
내일배움캠프 12일차 TIL - 팀 프로젝트 전투 기능 관련TIL/C# 2024. 4. 30. 20:57
[학습목표]C# 강의를 완강하고, 팀 프로젝트 필수 구현기능을 구현한다.[학습내용]오늘은 오전에 C# 강의를 모두 끝냈다. 5주차 강의는 정렬 알고리즘과 탐색 알고리즘 등 주로 알고리즘에 관한 내용이었는데, 학교에서 다 배운 내용이어서 빠르게 들었다. 오후부터 팀 프로젝트 진행을 시작했다. 원래는 각자 기능을 분담하여 구현하려 하였으나, 게임의 핵심인 몬스터와 전투 기능이 구현되지 않으면 다른 부분을 구현할 수 없었다. 그래서 핵심 파트 부분을 빠르게 구현할 수 있도록 다 같이 보며 구현을 진행하였다. 오늘 구현해야 하는 기능은 전투 기능이었다. 우선 전투 관련 기능을 구현하기 위해 배틀 매니저를 만들었다. 그리고 이 배틀 매니저 안에 전투 관련 기능을 구현했다. 1 ~ 4마리의 몬스터들을 무작위로 생..
-
내일배움캠프 11일차 TIL - 텍스트 기반 RPG 제작 팀 프로젝트 기초TIL/C# 2024. 4. 29. 20:34
[학습목표]텍스트 기반 RPG 게임 제작을 주제로 새로운 팀 프로젝트를 시작한다. 그리고 C# 강의를 시청하여 박싱(Boxing)에 대해 학습한다. [학습내용]이번 주차는 팀 프로젝트로 진행된다. 주제는 지난 주차의 개인 프로젝트와 비슷한 텍스트 기반 RPG 게임 제작이다. 그러나 이번 프로젝트는 팀으로 진행되는 것 외에도 게임에서 전투나 퀘스트, 캐릭터 커스텀 기능 등을 추가로 구현해야 한다.구현하게 될 기능들은 다음과 같다. 필수 구현게임 시작 화면상태 보기전투 시작선택 구현캐릭터 생성직업 선택치명타회피스킬레벨업보상퀘스트콘솔 디자인몬스터 종류 추가아이템(인벤토리)회복 아이템스테이지게임 저장 우선 프로젝트 이름을 정했다. 팀 이름이 Gambling 7|7|7 JackPot인 것을 고려하여 OceanSt..
-
내일배움캠프 10일차 TIL - 인터페이스, enum, 학습법 특강TIL/C# 2024. 4. 26. 19:34
[학습목표]C# 4주차 강의를 시청하고 인터페이스와 열거형 enum에 대해 학습한다. 그리고 학습법 특강을 청취한다.[학습내용]오늘은 C# 4주차 강의를 시청했다. 인터페이스과 열거형에 관한 내용은 다른 언어에서 자세하게 다룬 적이 없기 때문에 이번 기회에 확실하게 잡아놓고 가기로 했다. 인터페이스인터페이스를 다루기 전에 먼저 다중 상속에 관련된 문제에 대해 다뤄야했다.C#에서 다중 상속을 사용하지 않는 이유1. 다이아몬드 문제: 한 클래스가 두 개 이상의 부모 클래스로부터 상속받는 경우 같은 이름의 멤버의 처리에 대한 문제2. 설계의 복잡성 증가3. 이름 충돌의 문제와 해결의 어려움4. 설계의 일관성과 단순성 유지 기본적으로 C#은 클래스에서 다중 상속을 지원하지 않는다고 한다. 하지만 이걸 인터페이스..
-
내울배움캠프 9일차 TIL - 개인과제 완성TIL/C# 2024. 4. 25. 19:53
[학습목표]C# 개인 과제 추가기능을 모두 구현하여 제출한다.[학습내용]오늘은 개인 과제 제출일이기 때문에 개인 과제에 몰두하여 마무리했다.아래는 오늘까지 구현한 모든 기능이다. 오늘 새롭게 구현한 것들은 파란색으로 칠했다. 필수기능게임 시작 화면 구성스테이터스 보기 기능인벤토리 기능장착 관리 기능상점 기능아이템 구매 기능추가기능아이템 정보 클래스화아이템 정보 배열(리스트)로 관리아이템 판매 기능장착 관리 기능 개선던전 (추가)휴식 기능 (추가)레벨업 (추가)저장 / 불러오기 (추가)항목 수는 많지 않지만 스케일이 큰 게 끼어있기 때문에 시간이 생각보다 오래 걸렸다. 던전과 휴식, 레벨업 기능은 사실 크게 어렵지 않았다. 던전의 경우 구동 방식이 상점과 크게 다르지 않고, 씬매니저와 시스템 메시지 출력 ..
-
내일배움캠프 8일차 TIL - 클래스, 객체, 상속, 개인과제TIL/C# 2024. 4. 24. 20:27
[학습목표]C# 강의 3주차를 수강하여 클래스와 객체, 상속과 다형성, 고급 문법 등을 학습한다. 그리고 개인 과제 완성도를 높인다.[학습내용]C# 강의오늘은 어제에 이어 C# 강의 3주차를 수강했다. 3주차 마무리 문제도 2문항이었다. 스네이크 게임 만들기와 블랙잭 게임 만들기였다. 천천히 하면 진행할 수 있는 난이도로 보였으나, 개인 과제가 더 급하기 때문에 일단 제쳐놓기로 했다. 학습 1우선 새롭게 알게 된 것이 있다. '프로퍼티(property)'다. 다른 언어에서도 캡슐화를 위해 비슷한 기능을 구현하긴 했지만, 이렇게 용어로 만들거나 따로 형태가 있는 건 처음 보는 거 같다.프로퍼티는 클래스 멤버로서, 객체의 필드 값을 읽거나 설정하는데 사용되는 접근자(accessor) 메서..
-
내일배움캠프 7일차 TIL - 배열, 컬렉션, 메서드, 개인과제TIL/C# 2024. 4. 23. 21:25
[학습목표] C# 강의 2주차를 시청하고 문제를 제출한다. 그리고 이번 주차 C# 개인과제를 진행한다. [학습내용] 어제에 이어 C# 강의를 시청했다. 오늘은 배열과 컬렉션, 메서드와 구조체에 관해 학습했다. 딱히 새로운 것은 없었다. 다만 배열을 표시하는 방법이 다른 언어와 조금 달랐다. int[] arr1 = new int[5] // 1차원 배열 int[,] arr2 = new int[3,5] // 2차원 배열 특히 2차원 배열이 달랐다. 다른 언어의 경우 대괄호를 2번 열고 닫는데, C#은 콤마(,)를 사용하였다. 이게 더 편한 거 같긴 하다. 그리고 이 외에 기억해놔야 할 것은 컬렉션 종류 정도인 것 같다. List Dictionary Stack Queue HashSet 학습을 마치고 이번 주차 ..
-
내일배움캠프 6일차 TIL - C# 기초 변수, 자료형, 조건문, 반복문TIL/C# 2024. 4. 22. 20:43
[학습목표] C# 기초 문법을 학습한다. [학습내용] 이번 주부터 잠시 유니티를 내려놓고 C#을 학습한다. 녹화된 강의가 지급되었고, 개인적으로 강의를 시청하며 학습하는 방식이다. 다른 언어를 다뤄본 적이 있기 때문에 널널할 것으로 생각은 되지만, 25일 목요일에 제출해야하는 개인 과제가 하나 있기 때문에 마냥 쉬엄쉬엄 할 수 만은 없을 거 같다. 그리고 매일 오후 2시에 특별 컨텐츠가 진행된다. 튜터님이 따로 실시간 강의를 진행하시면서 어려운 점이나 궁금한 점이 있다면 해결해주시는 시간이다. 실시간으로 소통이 되기 때문에 그 자리에서 질문을 하거나 도움을 받을 수 있다는 점이 좋은 것 같다. 오늘은 1주차 강의인 변수와 자료형, 연산자나 문자열 처리 등을 배웠다. 다른 언어와 표현 방식에서만 차이가 있..