chunk 1: core gameplay scripts scenes runtime assets

This commit is contained in:
2026-04-06 11:02:34 +03:00
parent fa0388bc79
commit 0d11a097d8
703 changed files with 2292651 additions and 0 deletions

View File

@@ -0,0 +1,74 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System;
using System.Linq;
using TMPro;
public class HomeMissions : MonoBehaviour{
public GameObject Home_missionContainer; // Reference to the Character_Selection canvas
public GameObject Home_missionPrefab; // Mission prefab
private const string player_missionData = "Player_MissionData";
[HideInInspector]
public MissionProgress missionProgress;
[HideInInspector]
public List<MissionInfo> missionsInWeek;
Missions mission_details;
void OnEnable(){
if (PlayerPrefs.HasKey(player_missionData)){
missionProgress = LoadPlayer_MissionData();
}
mission_details = GetComponent<Missions>();
missionsInWeek = mission_details.getWeeklyMissions(missionProgress.current_week);
string result1 = ListToString(missionsInWeek);
//Debug.Log("Missions = " + result1);
foreach (MissionInfo mission_info in missionsInWeek){
// Instantiate the mission prefab
GameObject homeMission_instance = Instantiate(Home_missionPrefab, Home_missionContainer.transform);
homeMission_instance.name = "homeMission";
TextMeshProUGUI homeMissionTitle = homeMission_instance.transform.Find("missionDetails").GetComponent<TextMeshProUGUI>();
homeMissionTitle.text = mission_info.missionTitle;
TextMeshProUGUI homeMissionXP = homeMission_instance.transform.Find("missionXP").GetComponent<TextMeshProUGUI>();
homeMissionXP.text = "+ " + (mission_info.missionXP).ToString() + " XP";
}
Home_missionPrefab.SetActive (false);
}
string ListToString<T>(List<T> list){
// Use string.Join to concatenate the elements of the list into a string
return string.Join(", ", list);
}
//Loads mission progress from PlayerPrefs.
MissionProgress LoadPlayer_MissionData(){
string jsonData = PlayerPrefs.GetString(player_missionData, "{}"); // Details were stored as "PlayerData"
return JsonUtility.FromJson<MissionProgress>(jsonData);
}
// Start is called before the first frame update
void Start(){
}
// Update is called once per frame
void Update(){
}
}