728x90 C#12 17. 인벤토리 만들기-2 인벤토리 만들기-2 1. 1) slot 스크립트 만든후 이전에 만들어논 slot prefab에 스크립트를 넣어준다. 2) 스크립트using System.Collections;using System.Collections.Generic;using UnityEngine;using UnityEngine.UI;using UnityEngine.EventSystems;//item의 정보를 ui에 표시하는 매개체public class Slot : MonoBehaviour{ public Item item; public Image itemIcon; //slot 자식 image public void UpdateUI() { itemIcon.sprite = item.itemIcon; .. 2023. 4. 12. 12. 간단 로그라이크 만들기 - 3 class1) 손을 대지 않는다 stack1) 하나만 존재 heap1) // static - 클래스 맴버 변수 없이 어디서든 호출가능 , 자기자신을 저장//Awake - 스크립트가 비활성 상태에도 실행됨Single Tone - static을 준다 , Awake로 주로 선언(관례)1) 하나만 존재 2) 손쉬운 접근 -> 주된 목적 (다른스크립트에 접근할땐 스크립트를 담을 공간을 만들고 불러내야한다) #region ----------- #endregion Player -> 버튼 한번에 한칸만 이동Enemy ->한칸만 이동 코루틴 (coroutine) -> 흐름 제어 IEnumerator 로 시작하는 메소드는 -> 코루틴StartCoroutine() 메소드 선언 必 * 교재 레트로 9장 내용Vec.. 2023. 4. 4. 11. 간단 로그라이크 만들기 - 2 SerializeField(직렬화) -> private 변수지만 inspector 접근 가능 List ->List gridPosition = new List(); private void InitList() { gridPosition.Clear(); //Clear -> 기존 데이터 삭제(텅텅비게 만든다) //이중 for문 -> 위치(1,1)~(6,6) -> mapSize=8 for (int x = 1; x Instantiate -> 생성하시오Quaternion.identity -> 회전하지 않는다 exit 생성 Instantiate(exit, new Vector3(mapSize - 1, mapSize - 1), Quaternion.identity);ene.. 2023. 4. 3. 10. 간단한 로그라이크 게임 만들기 Start 10번째 수업 간단한 로그라이크 게임 만들기 Start 1.BoardManager using UnityEngine; using System; using System.Collections.Generic; //using Random = UnityEngine.Random; //List 활용, 이중For문, class(사용자 정의자료형) //배열random.range public class Count { public int min, max; public Count(int _min, int _max) { min = _min; max = _max; } } public class BoardManager : MonoBehaviour { //자원->object->저장 .. 2023. 3. 31. 9. C# 기초 수업 -9 1.print = Debug.Log ☆ FindObjectOfTypeDelegate - callback (a를 실행시키면 b도 자동실행) 2.//람다식, 델리게이트, Action, Func //Action -> 반환형이 없는 메소드 저장 //Func-> 반환형이 있는 메소드 저장익명메소드(2.0) -> 람다식(3.0)() => {} --------------> 람다식 //Action -> 익명메소드 Action act1 = () => { string msg = "hello"; foreach (var ch in msg) Console.WriteLine(ch); }; //func.. 2023. 3. 30. 8. C# 기초 수업 -8 8 번째 수업 필기 일반화 ->제네릭(generic) -> 메소드, 클래스 -> 중복방지 -> 제네릭using System.Collections; using System.Diagnostics; class MyClass { T[] array; string name; float speed; } internal class Program { private static void Main(string[] args) { MyClass array_Int = new MyClass(); MyClass array_Float = new MyClass(); ArrayList list = new ArrayList(); list.A.. 2023. 3. 29. 7. C# 기초 수업 -7 7번째 수업 필기 1. 프로퍼티 - 자료를 보호하기 위해씀 ->private class Enemy{ private string name; private int hp; }public Enemy(string name, int _hp) -> 생성자는 private 사용X{ this.name=name; hp=_hp (this를 사용하고 싶지 않다면 유일하게 변수에 쓸수 있는 특수문자 _를 써서 살짝 다름을 표시) }//프로퍼티 -> 자료(보호) ->private //getter, setter 함수 class Enemy { private string name; private int hp; EnemyState state = EnemyState.idle; //프로퍼티 publ.. 2023. 3. 28. 6. C# 기초 수업 -6 6번째 수업 필기 1. class vs structclass - 참조형식, new(O), 상속가능 class Player{ public int hp; public float moveSpeed; public float damage; }struct - 값형식, new(X), 상속불가능ex) struct Item{ public string Name; public int price; public string explain; }=> private static void Main(string[] args) { Player player = new Player(); //생성자, addcomponent player.hp = 100; .. 2023. 3. 27. 이전 1 2 다음