빌드 스크립트 추가

This commit is contained in:
Mingu Kim
2025-06-27 00:56:39 +09:00
parent 8cae00f132
commit 02dbaae8d1
5 changed files with 76 additions and 1 deletions

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 0520addb815e26946a4b893500a08374
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,49 @@
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using UnityEditor;
using UnityEditor.Build.Reporting;
using UnityEngine;
namespace TON
{
public class BuildScript
{
static string[] SCENES = FindEnabledEditorScenes();
static string APP_NAME = "TestBuild"; //앱이름 입력
static string TARGET_DIR = "E:/Build/"; //빌드경로 입력
[MenuItem("Build/Build Android")]
static void PerformAndroidBuild()
{
string target_dir = APP_NAME + ".apk";
PlayerSettings.keystorePass = "dlrhahdla"; //키스토어 비번 입력
PlayerSettings.keyaliasPass = "dlrhahdla"; //키스토어 비번 입력
GenericBuild(SCENES, TARGET_DIR + "/" + target_dir, BuildTargetGroup.Android, BuildTarget.Android, BuildOptions.None);
}
private static string[] FindEnabledEditorScenes()
{
List<string> EditorScenes = new List<string>();
foreach (EditorBuildSettingsScene scene in EditorBuildSettings.scenes)
{
if (!scene.enabled) continue;
EditorScenes.Add(scene.path);
}
return EditorScenes.ToArray();
}
static void GenericBuild(string[] scenes, string target_dir, BuildTargetGroup build_target_group, BuildTarget build_target, BuildOptions build_options)
{
EditorUserBuildSettings.SwitchActiveBuildTarget(build_target_group, build_target);
string res = BuildPipeline.BuildPlayer(scenes, target_dir, build_target, build_options).ToString();
if (res.Length < 0)
{
throw new Exception("BuildPlayer failure: " + res);
}
}
}
}

View File

@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 5b41a1a0b12f28d4c9b65acaefd7c1f2
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -8,6 +8,7 @@ namespace TON
public class RoulettePresenter : MonoBehaviour
{
private PlayerDataManager playerDataManager;
// ReactiveProperty
private void Awake()
{
@@ -18,6 +19,8 @@ namespace TON
{
Debug.LogError("PlayerDataManager가 초기화되지 않았습니다.");
}
// Todo : UI 바인딩
}
// 재화 획득 메서드

View File

@@ -5,12 +5,14 @@ using UnityEngine.UI;
namespace TON
{
// View
public class RouletteSpin : MonoBehaviour
{
[SerializeField] private Roulette roulette;
[SerializeField] private Button buttonSpin;
private PlayerDataManager playerDataManager;
// Todo : Presenter 변수
private void Awake()
{
@@ -27,6 +29,8 @@ namespace TON
buttonSpin.interactable = false;
roulette.Spin(EndOfSpin);
});
// Presenter 생성
}
private void EndOfSpin(RoulettePieceData selectedData)