This commit is contained in:
huyulong 2024-12-06 11:29:32 +08:00
commit 3dd80a3816
2 changed files with 54 additions and 41 deletions

View File

@ -15479,7 +15479,9 @@ MonoBehaviour:
m_EditorClassIdentifier:
eventId: 101
eventName: {fileID: 7468736065525718883}
eventimage: {fileID: 0}
eventImage: {fileID: 0}
maskImage: {fileID: 0}
IsOpen: 1
--- !u!114 &7468736064294474853
MonoBehaviour:
m_ObjectHideFlags: 0
@ -15785,7 +15787,9 @@ MonoBehaviour:
m_EditorClassIdentifier:
eventId: 102
eventName: {fileID: 7468736064069646105}
eventimage: {fileID: 0}
eventImage: {fileID: 0}
maskImage: {fileID: 0}
IsOpen: 1
--- !u!222 &7468736064421981256
CanvasRenderer:
m_ObjectHideFlags: 0
@ -16329,9 +16333,7 @@ MonoBehaviour:
schoolInfoList:
- {fileID: 7468736064927213727}
- {fileID: 7468736064421981270}
eventInfoList:
- {fileID: 7468736064294474852}
- {fileID: 7468736064384987111}
eventInfoList: []
incidentInfos: []
sceneItemList: []
difficultyList:

View File

@ -37,7 +37,7 @@ public class SelectScenePanel : MonoBehaviour
public List<Toggle> difficultyList = new List<Toggle>();//游戏难度
public Button continueBtn;
public List<Toggle> scenetoggleList = new List<Toggle>();
public List<Toggle> schooltoggleList=new List<Toggle>();
public List<Toggle> schooltoggleList = new List<Toggle>();
public List<Toggle> eventToggleList = new List<Toggle>();
public List<Toggle> evnetsceneList = new List<Toggle>();
@ -63,7 +63,6 @@ public class SelectScenePanel : MonoBehaviour
incidentLable.gameObject.SetActive(false);
InstantiateScenePrefab();
InstantiateSchoolPrefab();
InstantiateIncidentPrefab(2001);
SetEventToggleOpenorClose(incidentInfos);
continueBtn.onClick.AddListener(OnClickContinueBtn);
SetFirstChoise(scenetoggleList);
@ -75,6 +74,10 @@ public class SelectScenePanel : MonoBehaviour
void Update()
{
IsClick();
if(Input.GetKeyDown(KeyCode.A))
{
SelectEvnentBtn();
}
}
//动态加载场景选择预制体
@ -152,6 +155,7 @@ public class SelectScenePanel : MonoBehaviour
GameObject slot = GameObject.Instantiate<GameObject>(eventPrefab, eventList);
EventInfo item = slot.GetComponent<EventInfo>();
item.eventId = sceneData.Value.ID;
item.eventName.text = sceneData.Value.Note;
if (item.IsOpen)
{
@ -174,29 +178,29 @@ public class SelectScenePanel : MonoBehaviour
//动态加载事件选择预制体
public void InstantiateIncidentPrefab(int eventId)
{
//foreach (var eventData in jsonReader.incidentSiteDictionary)
//{
// if(eventData.Key==eventId)
// {
// GameObject slot = GameObject.Instantiate<GameObject>(eventPrefab, eventList);
// IncidentInfo item = slot.GetComponent<IncidentInfo>();
// item.incidentText.text = eventData.Value.Note;
// item.incidentID = eventData.Value.ID;
// Toggle toggle = slot.GetComponent<Toggle>();
foreach (var eventData in jsonReader.incidentSiteDictionary)
{
if (eventData.Key == eventId)
{
GameObject slot = GameObject.Instantiate<GameObject>(incidentPrefab, incidentList);
IncidentInfo item = slot.GetComponent<IncidentInfo>();
item.incidentText.text = eventData.Value.Note;
item.incidentID = eventData.Value.ID;
Toggle toggle = slot.GetComponent<Toggle>();
// if (toggle != null)
// {
// // ½« Toggle Ìí¼Óµ½ ToggleGroup ÖÐ
// toggle.group = eventGroup;
// toggle.isOn = false;
// incidentInfos.Add(item);
// }
// }
// else
// {
// break;
// }
//}
if (toggle != null)
{
// 将 Toggle 添加到 ToggleGroup 中
toggle.group = eventGroup;
toggle.isOn = false;
incidentInfos.Add(item);
}
}
else
{
break;
}
}
}
//点击继续按钮后更换场景图片及名称
@ -260,7 +264,7 @@ public class SelectScenePanel : MonoBehaviour
//学校选择
public void SelectSchoolBtn()
{
if(isSure)
if (isSure)
{
SchoolInfo gameObject = GetComponentInChildren<SchoolInfo>();
foreach (SchoolInfo item in schoolInfoList)
@ -289,6 +293,7 @@ public class SelectScenePanel : MonoBehaviour
// 设置场景名称
this.sceneName = item.sceneName.text; // 获取 Text 组件的文本
this.scnenId = item.sceneId;
Debug.Log("------------this.scnenId:" + this.scnenId);
createTemplateInfo.Instance.auth_CreateTemplate.sceneId = item.sceneId.ToString();
sceneSelected = true;
@ -305,12 +310,14 @@ public class SelectScenePanel : MonoBehaviour
bool eventSelected = false; // 检查是否有场景被选择
foreach (EventInfo item in eventInfoList)
{
// 检查当前的 Toggle 是否被选中
if (item.gameObject.transform.GetComponent<Toggle>().isOn)
{
// 设置场景名称
this.eventName = item.eventName.text; // 获取 Text 组件的文本
this.eventId = item.eventId;
EventData eventData = jsonReader.GetEvenById(this.eventId);
InstantiateIncidentPrefab(2001);
createTemplateInfo.Instance.auth_CreateTemplate.sceneId = item.eventId.ToString();
Debug.Log(this.eventName);
eventSelected = true;
@ -412,7 +419,7 @@ public class SelectScenePanel : MonoBehaviour
{
SelectEvent();
SelsctDifficulty();
SelectEvnentBtn();
//SelectEvnentBtn();
SetDataPanelInfo();
this.gameObject.SetActive(false);
}
@ -420,23 +427,30 @@ public class SelectScenePanel : MonoBehaviour
//关闭按钮
public void OnClickCloseBtn()
{
// 清空事件列表
eventInfoList.Clear();
// 销毁所有已实例化的事件预制体
foreach (Transform child in eventList)
{
Destroy(child.gameObject);
}
// 如果需要,也可以清空其他相关信息
eventToggleList.Clear();
eventId = -1;
eventName = string.Empty;
if (schoolChoiceLable.gameObject.active == false)
{
foreach (Transform child in sceneList)
{
child.gameObject.SetActive(false);
}
sceneLable.gameObject.SetActive(true);
schoolChoiceLable.gameObject.SetActive(true);
eventChoiceLable.gameObject.SetActive(false);
incidentLable.gameObject.SetActive(false);
InstantiateScenePrefab();
}
else
{
transform.gameObject.SetActive(false);
}
}
//通过判断Toggle的IsOn是否被打开来判断继续按钮是否置灰
@ -447,7 +461,6 @@ public class SelectScenePanel : MonoBehaviour
// 检查场景选择
foreach (Toggle toggle in scenetoggleList)
{
//Debug.Log("++++++++++++++++++++++++=" + scenetoggleList.Count());
if (toggle.isOn)
{
anyToggleSelected = true;
@ -535,8 +548,6 @@ public class SelectScenePanel : MonoBehaviour
item.GetComponent<Toggle>().interactable = true;
}
}
}
//设置日期界面的数据