use property rather than getter for hero party
	
		
			
	
		
	
	
		
	
		
			All checks were successful
		
		
	
	
		
			
				
	
				ci/woodpecker/push/woodpecker Pipeline was successful
				
			
		
		
	
	
				
					
				
			
		
			All checks were successful
		
		
	
	ci/woodpecker/push/woodpecker Pipeline was successful
				
			This commit is contained in:
		
							
								
								
									
										2
									
								
								Assets/Prefabs/Hero.prefab
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										2
									
								
								Assets/Prefabs/Hero.prefab
									
									
									
										generated
									
									
									
								
							| @@ -50,7 +50,7 @@ MonoBehaviour: | ||||
|   level: 0 | ||||
|   xp: 0 | ||||
|   attrs: {fileID: 0} | ||||
|   party: {fileID: 11400000, guid: c9a46588e6ec04d4d91bb80fdffd7869, type: 2} | ||||
|   _party: {fileID: 11400000, guid: c9a46588e6ec04d4d91bb80fdffd7869, type: 2} | ||||
| --- !u!1 &4632618406133265053 | ||||
| GameObject: | ||||
|   m_ObjectHideFlags: 0 | ||||
|   | ||||
| @@ -1,6 +1,7 @@ | ||||
| using System.Collections; | ||||
| using System.Collections.Generic; | ||||
| using UnityEngine; | ||||
| using UnityEngine.Assertions; | ||||
| 
 | ||||
| using System.Runtime.CompilerServices; | ||||
| [assembly: InternalsVisibleTo("TestsPlaymode")] | ||||
| @@ -16,21 +17,17 @@ public class HeroUnit : MonoBehaviour | ||||
|     [SerializeField] private long level; | ||||
|     [SerializeField] private long xp; | ||||
|     [SerializeField] private HeroAttributesSO attrs; | ||||
|     [SerializeField] private HeroPartySO party; | ||||
|     [SerializeField] private HeroPartySO _party; | ||||
|     internal HeroPartySO party => _party; | ||||
| 
 | ||||
|     private void OnEnable() | ||||
|     { | ||||
|         // NOTE(zeph): Party is mandatory. If none is set, we want an exception. | ||||
|         party.Add(this); | ||||
|         Assert.IsNotNull(_party); | ||||
|         _party.Add(this); | ||||
|     } | ||||
| 
 | ||||
|     private void OnDisable() | ||||
|     { | ||||
|         party.Remove(this); | ||||
|     } | ||||
| 
 | ||||
|     internal HeroPartySO getParty() | ||||
|     { | ||||
|         return party; | ||||
|         _party.Remove(this); | ||||
|     } | ||||
| } | ||||
|   | ||||
| @@ -14,11 +14,10 @@ public class HeroPartyTest | ||||
|         Assert.IsNotNull(prefab); | ||||
|         var instance = Object.Instantiate(prefab); | ||||
|         var hero = instance.GetComponent<HeroUnit>(); | ||||
|         var party = hero.getParty(); | ||||
|         yield return null; | ||||
|         Assert.AreEqual(1, party.Count); | ||||
|         Assert.AreEqual(1, hero.party.Count); | ||||
|         Object.Destroy(instance); | ||||
|         yield return null; | ||||
|         Assert.IsEmpty(party.UnitList); | ||||
|         Assert.IsEmpty(hero.party.UnitList); | ||||
|     } | ||||
| } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user