Files
TaiWan/Assets/ZX/ZX1/Scripts/ZX1Controller.cs

328 lines
10 KiB
C#
Raw Normal View History

2025-10-31 15:20:38 +08:00
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using System.Linq;
using System.IO;
using DG.Tweening;
using UnityEngine.Networking;
public class ZX1Controller : MonoBehaviour
{
/// <summary>
/// <20><>Ŀ
/// </summary>
public Text txtQuestion;
/// <summary>
/// ѡ<><D1A1>A<EFBFBD>ı<EFBFBD>
/// </summary>
public Text txtA;
/// <summary>
/// ѡ<><D1A1>B<EFBFBD>ı<EFBFBD>
/// </summary>
public Text txtB;
/// <summary>
/// ѡ<><D1A1>C<EFBFBD>ı<EFBFBD>
/// </summary>
public Text txtC;
/// <summary>
/// ѡ<><D1A1>D<EFBFBD>ı<EFBFBD>
/// </summary>
public Text txtD;
/// <summary>
/// <20><><EFBFBD><EFBFBD>UI
/// </summary>
public Text txtScore;
/// <summary>
/// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
/// </summary>
public RectTransform rectScore;
/// <summary>
/// <20><><EFBFBD><EFBFBD>
/// </summary>
public RectTransform rectBg;
/// <summary>
/// <20><>һ<EFBFBD>ⰴť<E2B0B4><C5A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϸ<EFBFBD><CFB7>ť<EFBFBD><C5A5><EFBFBD><EFBFBD>
/// </summary>
public Text txtNext;
/// <summary>
/// <20><>һ<EFBFBD>ⰴť
/// </summary>
public Button btnNext;
/// <summary>
/// ѡ<>ť
/// </summary>
public Button[] btnOptions;
/// <summary>
/// ѡ<><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
/// </summary>
public GameObject pnlOptions;
/// <summary>
/// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>
/// </summary>
public GameObject pnlError;
/// <summary>
/// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ
/// </summary>
public Text txtMessage;
/// <summary>
/// <20><><EFBFBD>ذ<EFBFBD>ť
/// </summary>
public Button btnReturn;
/// <summary>
/// <20><>Ϸ<EFBFBD><CFB7><EFBFBD><EFBFBD>ͼƬ
/// </summary>
public Image imgResult;
/// <summary>
/// <20><>Ϸʤ<CFB7><CAA4>ͼƬ
/// </summary>
public Sprite imgWin;
/// <summary>
/// <20><>Ϸʧ<CFB7><CAA7>ͼƬ
/// </summary>
public Sprite imgLose;
//ѡ<><D1A1><EFBFBD>б<EFBFBD>
List<QuestionInfo> lstQuestions = new List<QuestionInfo>();
Dictionary<string, string> dictErrorEx = new Dictionary<string, string>();
/// <summary>
/// <20><>ȷ<EFBFBD><C8B7><EFBFBD><EFBFBD>
/// </summary>
string answer;
/// <summary>
/// <20><><EFBFBD>÷<EFBFBD><C3B7><EFBFBD>
/// </summary>
int score;
/// <summary>
/// <20>Ѵ<EFBFBD><D1B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
/// </summary>
int currentQuestionCount;
/// <summary>
/// <20><>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
/// </summary>
int allQuestionCount;
/// <summary>
/// <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
/// </summary>
bool isWrong;
/// <summary>
/// <20>Ƿ<EFBFBD><C7B7>ѽ<EFBFBD><D1BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
/// </summary>
bool isOver;
Animator anim;
string basePath;
public string DataFileName = "Questions.json";
public string DataFileName_Error = "ErrorAnswer.json";
void Start()
{
basePath = CommonData.DataServer + "/ZX1/Data/";
anim = this.GetComponent<Animator>();
StartCoroutine(JsonLoader.LoadJSON(basePath + DataFileName, GetQuestionList));
StartCoroutine(JsonLoader.LoadJSON(basePath + DataFileName_Error, GetErrorAnswerList));
}
/// <summary>
/// <20><>ȡ<EFBFBD><C8A1>Ŀ<EFBFBD>б<EFBFBD>
/// </summary>
public void GetQuestionList(string data)
{
lstQuestions = JsonTools.ListFromJson<QuestionInfo>(data);
if (lstQuestions != null)
{
allQuestionCount = lstQuestions.Count;
UpdateQuestion();
}
#region
// lstQuestions = JsonMapper.ToObject<List<QuestionInfo>>(www.text);
//lstQuestions = new List<QuestionInfo>();
//lstQuestions.Add(new QuestionInfo { Title = "<22><> <20><>ͳһ<CDB3><D2BB>̨<EFBFBD>塣", Option_A = "˳<><CBB3>", Option_B = "Ӻ<><D3BA>", Option_C = "<22><><EFBFBD><EFBFBD>", Option_D = "Ǭ¡", Solution = "C" });
//lstQuestions.Add(new QuestionInfo { Title = "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʮ<EFBFBD><CAAE><EFBFBD>꣨1684<38><34><EFBFBD><EFBFBD><EFBFBD>£<EFBFBD><C2A3><EFBFBD>͢<EFBFBD><CDA2>̨<EFBFBD><CCA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD>أ<EFBFBD><D8A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڣ<EFBFBD> <20><><EFBFBD><EFBFBD>", Option_A = "<22><><EFBFBD><EFBFBD>ʡ", Option_B = "<22>㽭ʡ", Option_C = "<22>㶫ʡ", Option_D = "<22><><EFBFBD><EFBFBD>ʡ", Solution = "A" });
//lstQuestions.Add(new QuestionInfo { Title = "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʮ<EFBFBD><CAAE><EFBFBD>꣨1683<38><33>ʮ<EFBFBD><CAAE><EFBFBD><EFBFBD>ʮ<EFBFBD>գ<EFBFBD>ʩ<EFBFBD><CAA9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˾<EFBFBD><CBBE><EFBFBD><EFBFBD><EFBFBD>ʷ<EFBFBD><CAB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һƪ<D2BB><C6AA><EFBFBD><EFBFBD><E8A1AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", Option_A = "<22><><EFBFBD><EFBFBD>̨<EFBFBD><CCA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", Option_B = "<22><>̨<EFBFBD><CCA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", Option_C = "<22><>̨<EFBFBD><CCA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", Option_D = "̨<><CCA8><EFBFBD>һ<E2BDA8><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", Solution = "A" });
//lstQuestions.Add(new QuestionInfo { Title = "Ϊ<><CEAA>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̨<EFBFBD><CCA8><EFBFBD>ĵ<EFBFBD><C4B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD>Ƚ<EFBFBD><C8BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̨<EFBFBD><CCA8><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD>ʿ<EFBFBD><CABF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", Option_A = "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", Option_B = "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", Option_C = "ʩ<><CAA9>", Option_D = "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", Solution = "C" });
//lstQuestions.Add(new QuestionInfo { Title = "<22>ھ<EFBFBD><DABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˸<EFBFBD><CBB8>µ<EFBFBD>Ȩ<EFBFBD><C8A8>֮<EFBFBD>󣬿<EFBFBD><F3A3ACBF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڹ<EFBFBD>Ԫ<EFBFBD><D4AA> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̨<EFBFBD><CCA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC>", Option_A = "1683<38><33>", Option_B = "1684<38><34>", Option_C = "1685<38><35>", Option_D = "1686<38><36>", Solution = "B" });
//string data = JsonTools.ListToJson(lstQuestions);
//StreamWriter writer = File.CreateText(DataFileName);
//writer.Write(data);
//writer.Close();
#endregion
}
/// <summary>
/// <20><>ȡ<EFBFBD><C8A1>Ŀ<EFBFBD>б<EFBFBD>
/// </summary>
public void GetErrorAnswerList(string data)
{
dictErrorEx = JsonTools.DicFromJson<string, string>(data);
#region
//dictErrorEx = new Dictionary<string, string>();
//dictErrorEx.Add("˳<><CBB3>", "<22><><EFBFBD>¾<EFBFBD><C2BE>ޡ<EFBFBD><DEA1><EFBFBD><EFBFBD>٣<EFBFBD>1638<33>ꡪ1661<36><EFBFBD><EAA3A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E5A3AC><EFBFBD>꼴λ<EABCB4><CEBB>ʮ<EFBFBD><CAAE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>غ<EFBFBD><D8BA><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD>ʵۣ<CAB5><DBA3><EFBFBD>λ<EFBFBD><CEBB>ʮ<EFBFBD><CAAE><EFBFBD><EFBFBD>,<2C>ǿ<EFBFBD><C7BF><EFBFBD><EFBFBD>ʵ۵ĸ<DBB5><C4B8>ס<EFBFBD>");
//dictErrorEx.Add("Ӻ<><D3BA>", "<22><><EFBFBD><EFBFBD><EFBFBD>ڰ<EFBFBD><DAB0>¾<EFBFBD><C2BE>ޡ<EFBFBD>ط<EFBFBD>G<EFBFBD><47>1678<37>ꡪ1735<33><EFBFBD><EAA3A9><EFBFBD><EFBFBD><E5B3AF><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1722<32>ꡪ1735<33><35><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>۵<EFBFBD><DBB5><EFBFBD><EFBFBD>ӣ<EFBFBD><D3A3><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƽ<EFBFBD><C6BD><EFBFBD>޲<EFBFBD><DEB2>ص<EFBFBD><D8B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҡ<EFBFBD><D2A1><EFBFBD><EFBFBD>й<EFBFBD><D0B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĸ");
//dictErrorEx.Add("Ǭ¡", "<22><><EFBFBD>¾<EFBFBD><C2BE>ޡ<EFBFBD><DEA1><EFBFBD><EFBFBD><EFBFBD> <20><>1711<31>ꡪ1799<39><EFBFBD><EAA3A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӣ<EFBFBD><D3A3><EFBFBD><EFBFBD>й<EFBFBD><D0B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ּ<EFBFBD><D6BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߣ<EFBFBD>ʵ<EFBFBD><CAB5>ִ<EFBFBD><D6B4>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ļʵۣ<CAB5><DBA3><EFBFBD>λ<EFBFBD>ڼ<EFBFBD><DABC><EFBFBD>׫<EFBFBD><D7AB><EFBFBD>Ŀ<EFBFBD>ȫ<EFBFBD><EFBFBD><E9A1B7>");
//dictErrorEx.Add("<22><>̨<EFBFBD><CCA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", "1874<37><EFBFBD>տ<EFBFBD><D5BF>ɱ<EFBFBD><C9B1><EFBFBD>ռ̨<D5BC><CCA8><EFBFBD>ϲ<EFBFBD><CFB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĵ<EFBFBD><C4B5><EFBFBD>ȵء<C8B5><D8A1><EFBFBD>͢ί<CDA2><CEAF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD>ղ<EFBFBD><D5B2>󳼣<EFBFBD><F3B3BCA3><EFBFBD><EFBFBD><EFBFBD>̨<EFBFBD><CCA8><EFBFBD><EFBFBD><EFBFBD>񡣸<EFBFBD>̨<EFBFBD><CCA8><EFBFBD><EFBFBD><ECA3AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E0A1B6>̨<EFBFBD><CCA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ۡ<EFBFBD><DBA1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ձ<EFBFBD><D5B1><EFBFBD><EFBFBD><EFBFBD>Ұ<EFBFBD>ġ<EFBFBD>");
//dictErrorEx.Add("̨<><CCA8><EFBFBD>һ<E2BDA8><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", "1874<37><EFBFBD>ձ<EFBFBD><D5B1><EFBFBD>̨<EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ظ<EFBFBD><D8B8>Ӽ<EFBFBD><D3BC>ȣ<EFBFBD><C8A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1875<37><35><EFBFBD><EFBFBD>׼<EFBFBD><D7BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>塶̨<E5A1B6><CCA8><EFBFBD>һ<E2BDA8><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ۡ<EFBFBD><DBA1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڴ<EFBFBD><DAB4><EFBFBD>Ϫ<EFBFBD>Ա<EFBFBD><D4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̨<EFBFBD><CCA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͻ<EFBFBD><CFBD>ˮ<EFBFBD>ء<EFBFBD><D8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ء<EFBFBD><D8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ء<EFBFBD>");
//dictErrorEx.Add("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", "<22><><EFBFBD><EFBFBD><EFBFBD>壨1820<32>ꡪ1879<37><EFBFBD><EAA3A9>ԭ<EFBFBD><D4AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڣ<EFBFBD><DAA3><EFBFBD><EFBFBD>׵<EFBFBD><D7B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֺ<EFBFBD><D6BA><EFBFBD><EEA3AC><EFBFBD><EFBFBD><E5A3AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>٣<EFBFBD><D9A3>񸣽<EFBFBD><F1B8A3BD><EFBFBD><EFBFBD>ݣ<EFBFBD><DDA3>ˡ<EFBFBD><CBA1>й<EFBFBD><D0B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><ECB4AC><EFBFBD><EFBFBD><EFBFBD>ˡ<EFBFBD><CBA1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҵ<EFBFBD>ĵ<EFBFBD><C4B5><EFBFBD><EFBFBD><EFBFBD>֮һ<D6AE><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֿ<EFBFBD><D6BF><EFBFBD><EFBFBD>Եķ⽮<C4B7><E2BDAE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֮<EFBFBD><D6AE><EFBFBD><EFBFBD>ͬ<EFBFBD><CDAC>ʮ<EFBFBD><CAAE><EFBFBD>꣨1874<37><EFBFBD><EAA3A9><EFBFBD><EFBFBD>͢<EFBFBD><CDA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD>ղ<EFBFBD><D5B2>󳼣<EFBFBD><F3B3BCA3><EFBFBD>̨<EFBFBD><CCA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>󳼣<EFBFBD><F3B3BCA3><EFBFBD><EFBBAE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˣ<EFBFBD><CBA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ձ<EFBFBD><D5B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>档");
//dictErrorEx.Add("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", "<22><><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD>1812<31>ꡪ1885<38><EFBFBD><EAA3A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ּ<EFBFBD><D6BC>ߣ<EFBFBD><DFA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˡ<EFBFBD><CBA1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>μҡ<CEBC><D2A1><EFBFBD><EFBFBD>¼ҡ<C2BC><D2A1><EFBFBD><EFBFBD><EFBFBD>Ӣ<EFBFBD>ۣ<EFBFBD><DBA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɴ<EFBFBD><C9B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֮һ<D6AE><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD><CBB2>ơ<EFBFBD><C6A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ĵ<EFBFBD><C4B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƽ<EFBFBD><C6BD>̫ƽ<CCAB><C6BD><EFBFBD><EFBFBD><EFBFBD>˶<EFBFBD><CBB6><EFBFBD><EFBFBD>˰<EFBFBD><CBB0><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˶<EFBFBD><CBB6><EFBFBD><EFBFBD><EFBFBD>ѹ<EFBFBD><D1B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƽ<EFBFBD><C6BD><EFBFBD>¸<EFBFBD>ͬ<EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¡<EFBFBD><C2A1>ո<EFBFBD><D5B8>½<EFBFBD><C2BD><EFBFBD><EFBFBD>ƶ<EFBFBD><C6B6>½<EFBFBD><C2BD><EFBFBD>ʡ");
//dictErrorEx.Add("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", "<22><><EFBFBD><EFBFBD><EFBFBD>أ<EFBFBD>1642<34>ꡪ1718<31><EFBFBD><EAA3A9><EFBFBD><EFBFBD><EFBFBD>κ<EFBFBD><CEBA><EFBFBD>Ժ<EFBFBD><D4BA><EFBFBD>ޡ<EFBFBD><DEA1><EFBFBD><EFBFBD><EFBFBD>ѧʿ<D1A7><CABF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɡ<EFBFBD>ֱ<EFBFBD><D6B1>Ѳ<EFBFBD><D1B2><EFBFBD><EFBFBD>Э<EFBFBD><D0AD>ƽ<EFBFBD><C6BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֮<EFBFBD>ҡ<EFBFBD><D2A1><EFBFBD><EFBFBD><EFBFBD>ͳһ̨<D2BB><EFBFBD><E5A1B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʮ<EFBFBD><CAAE><EFBFBD>꣨1705<30><EFBFBD><EAA3A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԩ<EFBFBD><D4A8><EFBFBD><EFBFBD>ѧʿ<D1A7><CABF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>顣");
//string data = JsonTools.DicToJson(dictErrorEx);
//StreamWriter writer = File.CreateText(DataFileName_Error);
//writer.Write(data);
//writer.Close();
#endregion
}
/// <summary>
/// <20><>ȡ<EFBFBD><C8A1>Ŀ
/// </summary>
void UpdateQuestion()
{
foreach (Button btn in btnOptions)
{
btn.enabled = true;
btn.transform.GetComponentInChildren<Text>().color = Color.black;
}
if (currentQuestionCount < allQuestionCount)
{
int ordinal = Random.Range(0, lstQuestions.Count);
txtQuestion.text = lstQuestions[ordinal].Title;
txtA.text = lstQuestions[ordinal].Option_A;
txtB.text = lstQuestions[ordinal].Option_B;
txtC.text = lstQuestions[ordinal].Option_C;
txtD.text = lstQuestions[ordinal].Option_D;
answer = lstQuestions[ordinal].Solution;
lstQuestions.RemoveAt(ordinal);
isWrong = false;
currentQuestionCount++;
if (currentQuestionCount == allQuestionCount)
{
txtNext.text = "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>";
}
}
}
public void OnBtnOptionClick(string option)
{
if (!isOver)
{
if (option == answer)
{
AudioManager.Instance.PlayAudio("right", 0.5f);
//if (!isWrong)
{
score++;
txtScore.text = "<22><>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" + score;
rectScore.sizeDelta = new Vector2(64 * score, 64);
Tween myTween = rectScore.transform.DOShakePosition(1, 4);
myTween.SetEase(Ease.OutQuint);
}
if (txtNext.text != "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>")
{
OnBtnNextClick();
}
else
{
ShowResult();
}
}
else
{
isWrong = true;
Button btnClicked = btnOptions.First(btn => btn.name == "btn" + option);
Text txtOption = btnClicked.transform.GetComponentInChildren<Text>();
txtOption.color = Color.red;
btnClicked.enabled = false;
AudioManager.Instance.PlayAudio("error", 0.5f);
rectScore.sizeDelta = new Vector2(64 * score, 64);
Tween myTween = btnClicked.transform.DOShakePosition(1, 4);
myTween.SetEase(Ease.OutQuint);
if (dictErrorEx.ContainsKey(txtOption.text))
{
txtMessage.text = dictErrorEx[txtOption.text];
Invoke("ShowErrorOption", 1);
}
}
}
}
public GameObject subject;
void ShowResult()
{
imgResult.sprite = score == allQuestionCount ? imgWin : imgLose;
anim.SetTrigger("result");
// <20><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
// Invoke("OnBtnCloseClick", 3);
}
void ShowErrorOption()
{
btnNext.gameObject.SetActive(false);
pnlOptions.SetActive(false);
pnlError.SetActive(true);
// rectScore.gameObject.SetActive(false);
}
public void OnBtnNextClick()
{
if (!isOver)
{
if (txtNext.text == "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>")
{
isOver = true;
ShowResult();
}
else
{
UpdateQuestion();
}
}
}
public void OnBtnReturnClick()
{
pnlError.SetActive(false);
pnlOptions.SetActive(true);
btnNext.gameObject.SetActive(true);
rectScore.gameObject.SetActive(true);
}
public void OnBtnCloseClick()
{
// <20><><EFBFBD>Źرն<D8B1><D5B6><EFBFBD>
// anim.SetTrigger("close");
Close();
}
public void Close()
{
BaseController.HideView();
Destroy(gameObject.transform.parent.gameObject);
}
}