1. ExpBar를 UIBar 로 변경해서 UIButton과 같이 여러곳에서 공용으로 사용할 수 있게 변경 2. EventBus 를 만들어서 Button같이 자기 스스로 동작을 시작할 수 있는 오브젝트들 말고 수동적인 오브젝트들이 값을 받는 방식을 관리하게 설정 - PlayerController, UIManager, UIBar, EventBus를 연결함 3. Events 아래에 Player의 이벤트에 연관된 코드를 PlayerEvents 로 만들어서 관리함 - 경험치 전달 양식이 여기 존재 - 체력바나 마나바 같은 양식도 여기서 만들 예정
65 lines
1.6 KiB
C#
65 lines
1.6 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using UnityEngine;
|
|
|
|
public class GameScene : BaseScene
|
|
{
|
|
protected override void Init()
|
|
{
|
|
base.Init();
|
|
_sceneType = Define.Scene.Game;
|
|
|
|
Manager.UI.UIList = new List<string> { "ExpBar" , "JoyStick", "Button_Attack", "Button_Defence"};
|
|
|
|
// Manager.UI.SwitchOnObject<ExpBar>("ExpBar", true);
|
|
|
|
Manager.UI.SwitchOnObject<Joystick>("JoyStick", true);
|
|
|
|
UIButton atkbtn = Manager.UI.SwitchOnObject<UIButton>("Button_Attack", true);
|
|
|
|
if (atkbtn != null)
|
|
{
|
|
atkbtn.SetButtonContents(null,"공", false, true);
|
|
atkbtn.SetButtonRect("Button_Attack",
|
|
new Vector2(-100f - 180f / 2, 100f + 180f / 2),
|
|
180.0f,180.0f,
|
|
new Vector2(1, 0),
|
|
new Vector2(0.5f, 0.5f)
|
|
);
|
|
atkbtn.OnButtonClicked += Manager.Input.OnClicked;
|
|
}
|
|
|
|
UIBar expBar = Manager.UI.SwitchOnObject<UIBar>("ExpBar", true);
|
|
if (expBar != null)
|
|
{
|
|
expBar.SwitchObject(true,true);
|
|
}
|
|
|
|
|
|
CreateSpawner();
|
|
}
|
|
|
|
void CreateSpawner()
|
|
{
|
|
GameObject spawner = Manager.Resource.Instantiate("Prefabs/UI/Spawner", GameObject.Find("@Scene").transform);
|
|
|
|
var spawn = spawner.AddComponent<SpawnController>();
|
|
spawn.EnemyPrefabPath = "Prefabs/Characters/Test_Enemy";
|
|
spawn.EnemyDataPath = "Data/E_Test1";
|
|
}
|
|
|
|
private void Update()
|
|
{
|
|
|
|
}
|
|
|
|
public override void Clear()
|
|
{
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|