From 75934a5d54c87409c6fc00a88eea5b15726ff02b Mon Sep 17 00:00:00 2001
From: fernaldyl <90769501+fernaldy112@users.noreply.github.com>
Date: Sat, 15 Apr 2023 07:00:53 +0700
Subject: [PATCH] feat: save pet

---
 Assets/Scripts/Player/PlayerMovement.cs | 10 ++++++++++
 Assets/Scripts/Save/SaveData.cs         |  2 ++
 Assets/Scripts/Save/SaveHandler.cs      |  1 +
 3 files changed, 13 insertions(+)

diff --git a/Assets/Scripts/Player/PlayerMovement.cs b/Assets/Scripts/Player/PlayerMovement.cs
index a8fd76c..e9bc952 100644
--- a/Assets/Scripts/Player/PlayerMovement.cs
+++ b/Assets/Scripts/Player/PlayerMovement.cs
@@ -103,4 +103,14 @@ public class PlayerMovement : MonoBehaviour
         bool walking = h != 0f || v != 0f;
         anim.SetBool("IsWalking", walking);
     }
+
+    public int getPetIdx()
+    {
+        return pet;
+    }
+
+    public void setPetIdx(int petIdx)
+    {
+        this.pet = petIdx;
+    }
 }
diff --git a/Assets/Scripts/Save/SaveData.cs b/Assets/Scripts/Save/SaveData.cs
index b1401ff..ee4add1 100644
--- a/Assets/Scripts/Save/SaveData.cs
+++ b/Assets/Scripts/Save/SaveData.cs
@@ -12,6 +12,7 @@ public class SaveData
     public int playerHealth;
     public int goldAmount;
     public int questIdx;
+    public int petIdx;
     public DateTime saveTime;
 
     public static SaveData getSaveData()
@@ -24,6 +25,7 @@ public class SaveData
         data.playerHealth = player.GetComponent<PlayerHealth>().currentHealth;
         data.goldAmount = player.GetComponent<PlayerGold>().getGoldAmount();
         data.questIdx = canvas.GetComponent<QuestManager>().getQuestIdx();
+        data.petIdx = canvas.GetComponent<PlayerMovement>().getPetIdx();
         data.saveTime = DateTime.Now;
         return data;
     }
diff --git a/Assets/Scripts/Save/SaveHandler.cs b/Assets/Scripts/Save/SaveHandler.cs
index 86b1133..4ef105c 100644
--- a/Assets/Scripts/Save/SaveHandler.cs
+++ b/Assets/Scripts/Save/SaveHandler.cs
@@ -78,6 +78,7 @@ public class SaveHandler : MonoBehaviour
         player.GetComponent<PlayerHealth>().currentHealth = data.playerHealth;
         player.GetComponent<PlayerGold>().setGoldAmount(data.goldAmount);
         questManager.setQuestIdx(data.questIdx);
+        player.GetComponent<PlayerMovement>().setPetIdx(data.petIdx);
     }
 
     public Dictionary<int, Tuple<string, DateTime>> preprocessFileName(string[] files_str)
-- 
GitLab