Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ SpawnEnemy()

void Terraria.GameContent.CoinLossRevengeSystem.RevengeMarker.SpawnEnemy ( )
inline

Definition at line 174 of file CoinLossRevengeSystem.cs.

175 {
176 int num = NPC.NewNPC(new EntitySource_RevengeSystem(), (int)_location.X, (int)_location.Y, _npcNetID);
177 NPC nPC = Main.npc[num];
178 if (_npcNetID < 0)
179 {
180 nPC.SetDefaults(_npcNetID);
181 }
182 if (NPCID.Sets.SpecialSpawningRules.TryGetValue(_npcNetID, out var value) && value == 0)
183 {
184 Point point = nPC.position.ToTileCoordinates();
185 nPC.ai[0] = point.X;
186 nPC.ai[1] = point.Y;
187 nPC.netUpdate = true;
188 }
189 nPC.timeLeft += 3600;
190 nPC.extraValue = _coinsValue;
191 nPC.value = _baseValue;
192 nPC.SpawnedFromStatue = _spawnedFromStatue;
193 float num2 = Math.Max(0.5f, _npcHPPercent);
194 nPC.life = (int)((float)nPC.lifeMax * num2);
195 if (num < 200)
196 {
197 if (Main.netMode == 0)
198 {
199 nPC.moneyPing(_location);
200 }
201 else
202 {
203 NetMessage.SendData(23, -1, -1, null, num);
204 NetMessage.SendData(92, -1, -1, null, num, _coinsValue, _location.X, _location.Y);
205 }
206 }
207 if (DisplayCaching)
208 {
209 Main.NewText("Spawned " + nPC.GivenOrTypeName);
210 }
211 }
static byte Max(byte val1, byte val2)
Definition Math.cs:738
static Dictionary< int, int > SpecialSpawningRules
Definition NPCID.cs:96

References Terraria.GameContent.CoinLossRevengeSystem.RevengeMarker._baseValue, Terraria.GameContent.CoinLossRevengeSystem.RevengeMarker._coinsValue, Terraria.GameContent.CoinLossRevengeSystem.RevengeMarker._location, Terraria.GameContent.CoinLossRevengeSystem.RevengeMarker._npcHPPercent, Terraria.GameContent.CoinLossRevengeSystem.RevengeMarker._npcNetID, Terraria.GameContent.CoinLossRevengeSystem.RevengeMarker._spawnedFromStatue, Terraria.GameContent.CoinLossRevengeSystem.DisplayCaching, System.Math.Max(), Terraria.Main.netMode, Terraria.NPC.NewNPC(), Terraria.Main.NewText(), Terraria.Main.npc, Terraria.NetMessage.SendData(), Terraria.ID.NPCID.Sets.SpecialSpawningRules, System.value, Microsoft.Xna.Framework.Point.X, Microsoft.Xna.Framework.Vector2.X, Microsoft.Xna.Framework.Point.Y, and Microsoft.Xna.Framework.Vector2.Y.