
이번에 맡은 내용과 팀과 함께할 내용
아래쪽 더보기를 눌러보시면 팀원과 협력하기 위한 내용을 정리해본 다이어그램이 표시됩니다!

목표를 잡았으니 협력을 진행해봅시다.
제 첫 목표는 Github를 사용하기로 했으니 각 Scripts파일을 세분화해서 코드를 써보는 것입니다.

제가 만들기로 한건 캐릭터 생성, 메인화면 생성, 직업 추가가 있었지만 처음부터 목표는 나중에도 원하는 만큼 추가를 하길 바랬고 이걸 추가로도 사용하는 방법을 고민 하는것이었습니다.
PlayerInfo playerinfo;
CharCustom player;
public void mainScence(PlayerInfo _playerinfo)
{
while (true)
{
playerinfo = _playerinfo;
Console.WriteLine(" 스파르타 던전에 오신 여러분 환영합니다.");
Console.WriteLine(" 전투 시작에 앞서 행동을 선택해 주세요. ");
Console.WriteLine(" 1. Playerinfo");
//인포창 넘어가기
Console.WriteLine(" 2. Get in dungeon ");
//던전으로 넘어가기
Console.WriteLine(" 3. visitshop");
//상점으로 넘어가기
int input;
int.TryParse(Console.ReadLine(), out input);
switch (input)
{
case 1:
playerinfo.Info();
break;
}
}
}
한글로 바꾸는건 나중에 하기로하고 먼저 정해놓은 메인을 호출하고 대입하기위해 사전 준비만 해놓았습니다. 생각보다 가볍게 진행하기로했고 while문으로 무한반복시켜 나중에 switch로 trypase로 받은 정수를 계속 무한 반복시키기 위해 준비해놨습니다.
Info를 정하기 위해 원하는것을 생성하는 방식을 생각했습니다.
namespace Adventure
{
internal class PlayerInfo
{
CharCustom name;
GoMain main;
public string Name { get; set; }
public string Job { get; set; }
public int Lv { get; set; }
public int Str { get; set; }
public int Def { get; set; }
public int Hp { get; set; }
public int Gold { get; set; }
public int menu { get; set; }
public int Mp { get; set; }
public PlayerInfo(string name, string job,int lv, int str, int def, int hp, int mp, int gold)
{ //생성자 <
Name = name;
//이름
Job = job;
//직업
Lv = lv;
//레벨
Str = str;
//공격력
Def = def;
//방어력
Hp = hp;
//체력
Mp = mp;
//마력
Gold = gold;
//골드
}
public void Info()
{
Console.Clear();
while (true)
{
Console.WriteLine($"이름 : {Name}");
Console.WriteLine($"직업 : {Job}");
Console.WriteLine($"Lv : {Lv}");
Console.WriteLine($"공격력 : {Str}");
Console.WriteLine($"방어력 : {Def}");
Console.WriteLine($"체력 : {Hp}");
Console.WriteLine($"마력 : {Mp}");
Console.WriteLine($"골드 : {Gold}");
int input;
int.TryParse(Console.ReadLine(), out input);
switch (input)
{
case 1:
Console.Clear();
return;
}
}
}
}
}
CreateClass에서 호출시킬 생성자 매개변수를 저장하고 호출시켜 get set으로 프로퍼티화 시켜주었습니다.
그리고 한곳에서 한눈에 바라보기 쉽게 아래쪽에는 매서드 Info로 CreateClass에서 넘겨받은 값이 저장이 되겠죠.
PlayerInfo player;
CharCustom Name;
public PlayerInfo warrior()
{
player = new PlayerInfo("","전사", 1, 10, 10, 150, 50, 1500);
// 직업, 레벨, 공격력, 방어력,체력,마나,골드
return player;
}
public PlayerInfo wizard()
{
player = new PlayerInfo("", "마법사", 1, 5, 8, 100, 140, 1500);
// 직업, 레벨, 공격력, 방어력,체력,마나,골드
return player;
}
public PlayerInfo bandit()
{
player = new PlayerInfo("", "마법사", 1, 7, 7, 80, 80, 1500);
// 직업, 레벨, 공격력, 방어력,체력,마나,골드
return player;
}
위처럼 새로운 Class안에 Info Class의 생성자를 이용하여 값을 저장하고 나중에 불러오기 위해 저장시켰습니다. 그럼 위 작업을 통해 나중에 저장시킨값은 info로 넘겨받게 되고 return을 통해 player에 저장된 값은 거기서 넘겨지며 로직이 끝나게 됩니다. 위 과정을 통해 나중에 추가 변경이 편하게 하기 위해 이런 로직을 사용했으며 나중에 또 추가해보고 오류가 난다면 그때 다시 써보겠습니다! 감사합니다!!
마무리
개인 프로젝트 프로그램을 진행후 팀과 함께하는 협업을 진행하게되니 더 어렵고 까다롭지만 그래도 새롭게 알게되는 부분들이 많은 날이었던것 같습니다. 감사합니다!
'스파르탄캠프 > 본격적인 캠프' 카테고리의 다른 글
| 노베이스의 게임개발(본 캠프) Text RPG 팀 협업 진행 3탄 (0) | 2024.05.03 |
|---|---|
| 노베이스의 게임개발(본 캠프) Text RPG 팀 협업 진행 2탄 (2) | 2024.05.01 |
| 노베이스의 게임개발(본 캠프) 3주차 월요일 (0) | 2024.04.29 |
| 노베이스의 게임개발(본 캠프) TextRpg 기능 구현 (1) | 2024.04.26 |
| 노베이스의 게임개발(본 캠프) Text Rpg 연습해보기 (3) | 2024.04.26 |