전체 글 26

[unity]라이프 사이클

unity 라이프 사이클 게임오브젝트 생성부터 삭제까지의 흐름을 제어하는 일종의 순서도 크게[초기화] -> [게임 루프] -> [종료] 의 단계를 거침 1. Awake 객체가 만들어 질 때 한번 호출 다른 스크립트에서 이 객체 참조하기 전에 실행되어야 함 가정먼저 !!!!!!!!!! 실행되므로 데이터 초기화 적합 스크립트가 비활성화 되어 있어도 호출됨 ※다른 오브젝트와 상호작용 코드 여기 있으면 안됌** 2. OnEnable 게임 오브젝트 활성화 될 때 실행 SetActive(true) 호출 되면 이게 매번 다시 실행 주로 이벤트 리스너 등록을 여기서 함 ※만약 위에꺼 했다면 OnDisable이벤트 등록 해지 코드 꼭 작성해야댐 3. Start Awake들 전부 싹 다 수행하고, 첫번째 업데이트 전에 한..

이론 2025.02.04

[unity]Invoke,InvokeRepeating 시간 지연, CancelInvoke 해제

Invoke("함수명",지연시간);InvokeRepeating("함수명", 몇 초 뒤 실행, 몇 초 간격으로 실행); //해제CancelInvoke("함수명")    예) int a = 1; private void plus() { a++; } private void start() { //3초 뒤 plus함수 실행 Invoke("plus", 3); //3초 뒤 5초 간격으로 plus함수 반복 실행 InvokeRepeating("plus", 3, 5); //Invoke를 실행한 plus함수 해제 CancelInvoke("plus"); }

이론 2025.02.03

Day21 - Linked List(연결 리스트) 과제

Buff 클래스 제작버프의 이름을 담을 문자열 필드버프의 지속시간을 담을 정수형 필드생성자를 작성하여 위 필드를 초기화 진행BuffManager 클래스필드로 LinkedList 를 가지게 함구현해야 할 메서드들AddBuff(string name, int duration): 새로운 버프를 링크드리스트에 추가합니다.UpdateBuffs: 모든 버프의 지속 시간을 1 감소시키고, 지속 시간이 0인 버프는 제거합니다.제거될 때 버프 이름과 "효과 종료" 메시지를 출력합니다.ShowActiveBuffs: 현재 활성화된 모든 버프의 이름과 남은 지속 시간을 출력합니다.메인서 테스트 해보기BuffManager 객체를 생성하고 다양한 버프를 추가합니다.AddBuff → UpdateBuffs → ShowActiveBuf..

과제 2024.12.18

Day19 - 큐, 리스트 심화

심화 과제 ) 큐 사용Milk라는 클래스와 VendingMachine 이라는 클래스를 하나 만들겠습니다. Milk의 맴버변수로, 유통기한을 나타내는 int를 작성해주시기 바랍니다.VendingMachine 클래스에는 Queue를 활용하여 Milk를 담을 수 있는 컨테이너를 필드로 작성하여 주시기 바랍니다.벤딩머신의 메소드로, 우유를 집어넣는 코드와 우유를 꺼내는 기능을 작성하되, 꺼낼때는 콘솔에 유통기한 및 큐에 남아있는 갯수를 출력하는 기능을 작성해주시기 바랍니다. 갯수가 0일때 우유를 꺼내는 기능을 호출하게 되면 꺼내는 대신 다른 멘트가 나오게끔 작성해주시길 바랍니다.. internal class Milk { public int shelfLife;//유통기한 } internal class Ve..

과제 2024.12.17

Day18 - 인터페이스 심화

https://record5555.tistory.com/26 Day18 - 인터페이스 일반 과제과제 ) 인터페이스 구현RPG 게임에 수많은 NPC가 있습니다. 어떤 NPC는 그냥 아무 기능 없이 가끔 랜덤한 시간에 대사를 뱉기도 하고, 특정 NPC는 플레이어와 G와 같은 키로 상호작용을 하여 강화 혹record5555.tistory.com 심화 과제) 근거리에 있을때만 상호 작용 가능하게 구현플레이어는 상호작용 가능한 모든 NPC들과, 언제나 소통할 수 있는 건 아닙니다. 거리가 가까울때만 상호작용이 가능합니다. 이를 구현하기 위해 필요한 다양한 필드, 메서드, 프로퍼티등을 구현합니다.메인서 다양한 종류의 NPC 를 만들고, 모든 NPC를 담은 NPC 배열을 하나 만듭니다플레이어에게 ShowInterac..

과제 2024.12.17

Day18 - 인터페이스 일반 과제

과제 ) 인터페이스 구현RPG 게임에 수많은 NPC가 있습니다. 어떤 NPC는 그냥 아무 기능 없이 가끔 랜덤한 시간에 대사를 뱉기도 하고, 특정 NPC는 플레이어와 G와 같은 키로 상호작용을 하여 강화 혹은 창고와 같은 기능을 수행할 수 있습니다. NPC 뼈대 클래스 작성모든 NPC들이 상속받을 추상클래스를 하나 만듭니다.모든 NPC는 좌표 x를 가지고 있습니다.모든 NPC는 이름을 가지고 있습니다.플레이어어와 상호작용 할 수 있는 특정 NPC들이 사용할 인터페이스 제작이름은 IInteractable을 추천드립니다.이 인터페이스 속엔 Interact() 메서드를 선언합니다.추가적인 내용을 담고 싶다면 프로퍼티, 메서드를 더 넣습니다.NPC 구현(모두 위에서 만든 추상클래스 하나를 상속받습니다)강화 NP..

과제 2024.12.13

Day17 - 상속,추상 class

심화 과제 1Trainer라는 클래스를 만들고, 해당 구현 과제를 추상 클래스를 활용하여 진행하려 합니다. 다음 구현사항에 맞추어 Trainer클래스를 완성시켜 주시기 바랍니다.Monster라는 추상 클래스를 새로 하나 만들고, 해당 클래스의 필드로는 정수형 레벨, 열거형 몹타입, 그리고 문자열 이름을 넣어서 만들어 주시기 바랍니다. Monster 추상 클래스에 BaseAttack이라는 abstract 메소드도 추가하여 주시기 바랍니다.abstract class Monster{ public int MonsterLevel; public string MonsterName; public MobType MonsterMobType; //abstract 함수는 내용을 쓸수가 없다. ..

과제 2024.12.12

Day16 - static 심화

https://record5555.tistory.com/23 Day16 - static 1~6과제과제 1) static 직접 만들어 보기일반 클래스를 하나 만든 후, 맴버 변수로 private static 정수를 하나 가지게 하자. 일반 클래스 public 메서드로 해당 static 정수를 하나 1 올리는 메서드와, 해당 static변record5555.tistory.com  심화 과제 3) 업적 시스템새로운 cs 파일을 만들고, Achievement 클래스를 생성. 아래 구현 사항을 보다가 필요해보이는 내용이 발견되면 자유롭게 추가 구현 ㄱㄱ일반 필드 및 프로퍼티string Name: 업적 이름string Description: 업적 설명int Goal: 목표 수치int Progress: 현재 진행 수..

과제 2024.12.12