Upload from upload_mods.ps1
This commit is contained in:
113
Scripts/Quests/ObjectiveClosestPOIGotoRebirth.cs
Normal file
113
Scripts/Quests/ObjectiveClosestPOIGotoRebirth.cs
Normal file
@@ -0,0 +1,113 @@
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine.Scripting;
|
||||
|
||||
[Preserve]
|
||||
public class ObjectiveClosestPOIGotoRebirth : ObjectiveGoto
|
||||
{
|
||||
public override void SetupObjective()
|
||||
{
|
||||
this.keyword = Localization.Get("ObjectiveRallyPointHeadTo");
|
||||
}
|
||||
|
||||
public override void SetupDisplay()
|
||||
{
|
||||
base.Description = this.keyword;
|
||||
}
|
||||
|
||||
public override void SetupIcon()
|
||||
{
|
||||
this.icon = "ui_game_symbol_quest";
|
||||
}
|
||||
|
||||
public override bool SetupPosition(EntityNPC ownerNPC = null, EntityPlayer player = null, List<Vector2> usedPOILocations = null, int entityIDforQuests = 1)
|
||||
{
|
||||
return this.GetPosition(ownerNPC, player, usedPOILocations, -1) != Vector3.zero;
|
||||
}
|
||||
|
||||
public override void SetPosition(Vector3 position, Vector3 size)
|
||||
{
|
||||
base.FinalizePoint(position, size);
|
||||
}
|
||||
|
||||
public override Vector3 GetPosition(EntityNPC ownerNPC = null, EntityPlayer entityPlayer = null, List<Vector2> usedPOILocations = null, int entityIDforQuests = -1)
|
||||
{
|
||||
//Log.Out("ObjectiveClosestPOIGotoRebirth-GetPosition START");
|
||||
int traderId = (ownerNPC == null) ? (-1) : ownerNPC.entityId;
|
||||
int playerId = (entityPlayer == null) ? (-1) : entityPlayer.entityId;
|
||||
|
||||
if (base.OwnerQuest.GetPositionData(out this.position, Quest.PositionDataTypes.POIPosition))
|
||||
{
|
||||
//Log.Out("ObjectiveClosestPOIGotoRebirth-GetPosition 1");
|
||||
base.OwnerQuest.Position = this.position;
|
||||
this.positionSet = true;
|
||||
base.OwnerQuest.HandleMapObject(Quest.PositionDataTypes.POIPosition, this.NavObjectName, -1);
|
||||
base.CurrentValue = 2;
|
||||
return this.position;
|
||||
}
|
||||
|
||||
EntityAlive entityAlive;
|
||||
|
||||
if (ownerNPC == null)
|
||||
{
|
||||
//Log.Out("ObjectiveClosestPOIGotoRebirth-GetPosition 2");
|
||||
entityAlive = OwnerQuest.OwnerJournal.OwnerPlayer;
|
||||
}
|
||||
else
|
||||
{
|
||||
//Log.Out("ObjectiveClosestPOIGotoRebirth-GetPosition 3");
|
||||
entityAlive = ownerNPC;
|
||||
}
|
||||
|
||||
if (SingletonMonoBehaviour<ConnectionManager>.Instance.IsServer)
|
||||
{
|
||||
//Log.Out("ObjectiveClosestPOIGotoRebirth-GetPosition 4");
|
||||
PrefabInstance closestPOIToWorldPos = GameManager.Instance.World.ChunkClusters[0].ChunkProvider.GetDynamicPrefabDecorator().GetClosestPOIToWorldPos(base.OwnerQuest.QuestTags, new Vector2(entityAlive.position.x, entityAlive.position.z), null, -1, false, BiomeFilterTypes.AnyBiome, "");
|
||||
if (closestPOIToWorldPos == null)
|
||||
{
|
||||
//Log.Out("ObjectiveClosestPOIGotoRebirth-GetPosition 5");
|
||||
return Vector3.zero;
|
||||
}
|
||||
Vector2 vector = new Vector2((float)closestPOIToWorldPos.boundingBoxPosition.x + (float)closestPOIToWorldPos.boundingBoxSize.x / 2f, (float)closestPOIToWorldPos.boundingBoxPosition.z + (float)closestPOIToWorldPos.boundingBoxSize.z / 2f);
|
||||
if (vector.x == -0.1f && vector.y == -0.1f)
|
||||
{
|
||||
//Log.Error("ObjectiveClosestPOIGotoRebirth: No POI found.");
|
||||
return Vector3.zero;
|
||||
}
|
||||
int num = (int)vector.x;
|
||||
int num2 = (int)entityAlive.position.y;
|
||||
int num3 = (int)vector.y;
|
||||
if (GameManager.Instance.World.IsPositionInBounds(this.position))
|
||||
{
|
||||
//Log.Out("ObjectiveClosestPOIGotoRebirth-GetPosition 6");
|
||||
FinalizePoint(new Vector3((float)closestPOIToWorldPos.boundingBoxPosition.x, (float)closestPOIToWorldPos.boundingBoxPosition.y, (float)closestPOIToWorldPos.boundingBoxPosition.z), new Vector3((float)closestPOIToWorldPos.boundingBoxSize.x, (float)closestPOIToWorldPos.boundingBoxSize.y, (float)closestPOIToWorldPos.boundingBoxSize.z));
|
||||
position = new Vector3((float)num, (float)num2, (float)num3);
|
||||
OwnerQuest.Position = this.position;
|
||||
return this.position;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
//Log.Out("ObjectiveClosestPOIGotoRebirth-GetPosition 7");
|
||||
SingletonMonoBehaviour<ConnectionManager>.Instance.SendToServer(NetPackageManager.GetPackage<NetPackageQuestGotoPoint>().Setup(traderId, playerId, OwnerQuest.QuestTags, OwnerQuest.QuestCode, NetPackageQuestGotoPoint.QuestGotoTypes.Closest, OwnerQuest.QuestClass.DifficultyTier, 0, -1, 0f, 0f, 0f, -1f, BiomeFilterTypes.AnyBiome, ""), false);
|
||||
base.CurrentValue = 1;
|
||||
}
|
||||
|
||||
//Log.Out("ObjectiveClosestPOIGotoRebirth-GetPosition 8");
|
||||
return Vector3.zero;
|
||||
}
|
||||
|
||||
public override void UpdateState_WaitingForServer()
|
||||
{
|
||||
if (this.positionSet)
|
||||
{
|
||||
base.CurrentValue = 2;
|
||||
}
|
||||
}
|
||||
|
||||
public override BaseObjective Clone()
|
||||
{
|
||||
ObjectiveClosestPOIGotoRebirth ObjectiveClosestPOIGotoRebirth = new ObjectiveClosestPOIGotoRebirth();
|
||||
this.CopyValues(ObjectiveClosestPOIGotoRebirth);
|
||||
return ObjectiveClosestPOIGotoRebirth;
|
||||
}
|
||||
}
|
||||
250
Scripts/Quests/ObjectiveGotoNamedPOIRebirth.cs
Normal file
250
Scripts/Quests/ObjectiveGotoNamedPOIRebirth.cs
Normal file
@@ -0,0 +1,250 @@
|
||||
using System.Collections.Generic;
|
||||
|
||||
public class ObjectiveGotoNamedPOIRebirth : ObjectiveRandomPOIGoto
|
||||
{
|
||||
public string POIName = "";
|
||||
|
||||
public override void ParseProperties(DynamicProperties properties)
|
||||
{
|
||||
if (properties.Values.ContainsKey("PrefabName"))
|
||||
POIName = properties.Values["PrefabName"];
|
||||
if (properties.Values.ContainsKey("PrefabNames"))
|
||||
{
|
||||
var TempList = new List<string>();
|
||||
var strTemp = properties.Values["PrefabNames"];
|
||||
|
||||
var array = strTemp.Split(',');
|
||||
for (var i = 0; i < array.Length; i++)
|
||||
{
|
||||
if (TempList.Contains(array[i]))
|
||||
continue;
|
||||
TempList.Add(array[i]);
|
||||
}
|
||||
|
||||
var random = new System.Random();
|
||||
var index = random.Next(TempList.Count);
|
||||
|
||||
if (TempList.Count == 0)
|
||||
Debug.Log(" ObjectiveGotoPOIRebirth PrefabNames Contains no prefabs.");
|
||||
else
|
||||
POIName = TempList[index];
|
||||
}
|
||||
|
||||
base.ParseProperties(properties);
|
||||
}
|
||||
public override void SetupObjective()
|
||||
{
|
||||
//Log.Out("ObjectiveGotoNamedPOIRebirth-SetupObjective");
|
||||
this.keyword = Localization.Get("ObjectiveRallyPointHeadTo");
|
||||
}
|
||||
|
||||
public override void SetupIcon()
|
||||
{
|
||||
//Log.Out("ObjectiveGotoNamedPOIRebirth-SetupIcon");
|
||||
this.icon = "ui_game_symbol_quest";
|
||||
}
|
||||
|
||||
public override bool NeedsNPCSetPosition
|
||||
{
|
||||
get
|
||||
{
|
||||
//Log.Out("ObjectiveGotoNamedPOIRebirth-NeedsNPCSetPosition");
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
public override bool SetupPosition(EntityNPC ownerNPC = null, EntityPlayer player = null, List<Vector2> usedPOILocations = null, int entityIDforQuests = -1)
|
||||
{
|
||||
//Log.Out("ObjectiveGotoNamedPOIRebirth-SetupPosition");
|
||||
return this.GetPosition(ownerNPC, player, usedPOILocations, entityIDforQuests) != Vector3.zero;
|
||||
}
|
||||
|
||||
public override void AddHooks()
|
||||
{
|
||||
//Log.Out("ObjectiveGotoNamedPOIRebirth-AddHooks");
|
||||
base.AddHooks();
|
||||
base.OwnerQuest.HandleMapObject(Quest.PositionDataTypes.POIPosition, this.NavObjectName, -1);
|
||||
}
|
||||
|
||||
public void SetDistanceOffset(Vector3 POISize)
|
||||
{
|
||||
//Log.Out("ObjectiveGotoNamedPOIRebirth-SetDistanceOffset");
|
||||
if (POISize.x > POISize.z)
|
||||
{
|
||||
this.distanceOffset = POISize.x;
|
||||
return;
|
||||
}
|
||||
this.distanceOffset = POISize.z;
|
||||
}
|
||||
|
||||
public override void SetPosition(Vector3 POIPosition, Vector3 POISize)
|
||||
{
|
||||
//Log.Out("ObjectiveGotoNamedPOIRebirth-SetPosition");
|
||||
this.SetDistanceOffset(POISize);
|
||||
base.OwnerQuest.SetPositionData(Quest.PositionDataTypes.POIPosition, POIPosition);
|
||||
base.OwnerQuest.SetPositionData(Quest.PositionDataTypes.POISize, POISize);
|
||||
base.OwnerQuest.Position = POIPosition;
|
||||
this.position = POIPosition;
|
||||
}
|
||||
|
||||
public override Vector3 GetPosition(EntityNPC ownerNPC = null, EntityPlayer entityPlayer = null, List<Vector2> usedPOILocations = null, int entityIDforQuests = -1)
|
||||
{
|
||||
//Log.Out("ObjectiveGotoNamedPOIRebirth GetPosition START");
|
||||
/*//Log.Out("ObjectiveGotoNamedPOIRebirth-GetPosition");
|
||||
//Log.Out("ObjectiveGotoNamedPOIRebirth-GetPosition, X: " + ownerNPC.position.x);
|
||||
//Log.Out("ObjectiveGotoNamedPOIRebirth-GetPosition, Y: " + ownerNPC.position.y);
|
||||
//Log.Out("ObjectiveGotoNamedPOIRebirth-GetPosition, Z: " + ownerNPC.position.z);*/
|
||||
if (base.OwnerQuest.GetPositionData(out this.position, Quest.PositionDataTypes.POIPosition))
|
||||
{
|
||||
//Log.Out("ObjectiveGotoNamedPOIRebirth GetPosition-1");
|
||||
Vector3 vector;
|
||||
base.OwnerQuest.GetPositionData(out vector, Quest.PositionDataTypes.POISize);
|
||||
Vector2 vector2 = new Vector2(this.position.x + vector.x / 2f, this.position.z + vector.z / 2f);
|
||||
int num = (int)vector2.x;
|
||||
int num2 = (int)vector2.y;
|
||||
int num3 = (int)GameManager.Instance.World.GetHeightAt(vector2.x, vector2.y);
|
||||
this.position = new Vector3((float)num, (float)num3, (float)num2);
|
||||
base.OwnerQuest.Position = this.position;
|
||||
this.SetDistanceOffset(vector);
|
||||
this.positionSet = true;
|
||||
base.OwnerQuest.HandleMapObject(Quest.PositionDataTypes.POIPosition, this.NavObjectName, -1);
|
||||
base.CurrentValue = 2;
|
||||
return this.position;
|
||||
}
|
||||
//Log.Out("ObjectiveGotoNamedPOIRebirth GetPosition 2");
|
||||
EntityAlive entityAlive = null;
|
||||
if (ownerNPC == null)
|
||||
{
|
||||
//Log.Out("ObjectiveGotoNamedPOIRebirth GetPosition 3");
|
||||
entityAlive = base.OwnerQuest.OwnerJournal.OwnerPlayer;
|
||||
}
|
||||
else
|
||||
{
|
||||
//Log.Out("ObjectiveGotoNamedPOIRebirth GetPosition 4");
|
||||
entityAlive = ownerNPC;
|
||||
}
|
||||
if (SingletonMonoBehaviour<ConnectionManager>.Instance.IsServer)
|
||||
{
|
||||
//Log.Out("ObjectiveGotoNamedPOIRebirth-GetPosition 5 prefab:" + this.POIName);
|
||||
List<PrefabInstance> prefabInstances = GameManager.Instance.World.ChunkClusters[0].ChunkProvider.GetDynamicPrefabDecorator().GetDynamicPrefabs().FindAll(instance => instance.name.Contains(this.POIName));
|
||||
|
||||
if (prefabInstances.Count == 0)
|
||||
{
|
||||
//Log.Out("ObjectiveGotoNamedPOIRebirth GetPosition 6");
|
||||
return Vector3.zero;
|
||||
}
|
||||
|
||||
var prefab = RebirthUtilities.FindClosesPrefabs(entityAlive.position, prefabInstances, usedPOILocations, biomeFilterType, biomeFilter);
|
||||
|
||||
if (prefab == null)
|
||||
{
|
||||
//Log.Out("ObjectiveGotoNamedPOIRebirth GetPosition 7");
|
||||
return Vector3.zero;
|
||||
}
|
||||
|
||||
//Log.Out("ObjectiveGotoNamedPOIRebirth-GetPosition prefab.boundingBoxPosition: " + prefab.boundingBoxPosition);
|
||||
|
||||
Vector2 vector3 = new Vector2((float)prefab.boundingBoxPosition.x + (float)prefab.boundingBoxSize.x / 2f, (float)prefab.boundingBoxPosition.z + (float)prefab.boundingBoxSize.z / 2f);
|
||||
if (vector3.x == -0.1f && vector3.y == -0.1f)
|
||||
{
|
||||
Log.Error("ObjectiveRandomGoto: No POI found.");
|
||||
return Vector3.zero;
|
||||
}
|
||||
|
||||
int num4 = (int)vector3.x;
|
||||
int num5 = (int)GameManager.Instance.World.GetHeightAt(vector3.x, vector3.y);
|
||||
int num6 = (int)vector3.y;
|
||||
this.position = new Vector3((float)num4, (float)num5, (float)num6);
|
||||
if (GameManager.Instance.World.IsPositionInBounds(this.position))
|
||||
{
|
||||
//Log.Out("ObjectiveGotoNamedPOIRebirth GetPosition 8");
|
||||
base.OwnerQuest.Position = this.position;
|
||||
base.FinalizePoint(new Vector3((float)prefab.boundingBoxPosition.x, (float)prefab.boundingBoxPosition.y, (float)prefab.boundingBoxPosition.z), new Vector3((float)prefab.boundingBoxSize.x, (float)prefab.boundingBoxSize.y, (float)prefab.boundingBoxSize.z));
|
||||
base.OwnerQuest.QuestPrefab = prefab;
|
||||
base.OwnerQuest.DataVariables.Add("POIName", base.OwnerQuest.QuestPrefab.location.Name);
|
||||
return this.position;
|
||||
}
|
||||
|
||||
return Vector3.zero;
|
||||
}
|
||||
else
|
||||
{
|
||||
//Log.Out("ObjectiveGotoNamedPOIRebirth GetPosition 9");
|
||||
SingletonMonoBehaviour<ConnectionManager>.Instance.SendToServer(NetPackageManager.GetPackage<NetPackageQuestNamedPOIGotoRebirth>().Setup(this.POIName, entityAlive.entityId, base.OwnerQuest.QuestTags, base.OwnerQuest.QuestCode, NetPackageQuestNamedPOIGotoRebirth.QuestGotoTypes.RandomPOI, base.OwnerQuest.QuestClass.DifficultyTier, 0, -1, 0f, 0f, 0f, -1f, this.biomeFilterType, this.biomeFilter), false);
|
||||
base.CurrentValue = 1;
|
||||
}
|
||||
|
||||
//Log.Out("ObjectiveGotoNamedPOIRebirth GetPosition END");
|
||||
return Vector3.zero;
|
||||
}
|
||||
|
||||
public override BaseObjective Clone()
|
||||
{
|
||||
//Log.Out("ObjectiveGotoNamedPOIRebirth-Clone");
|
||||
ObjectiveGotoNamedPOIRebirth objectiveRandomPOIGoto = new ObjectiveGotoNamedPOIRebirth();
|
||||
this.CopyValues(objectiveRandomPOIGoto);
|
||||
objectiveRandomPOIGoto.POIName = POIName;
|
||||
return objectiveRandomPOIGoto;
|
||||
}
|
||||
|
||||
public override string ParseBinding(string bindingName)
|
||||
{
|
||||
//Log.Out("ObjectiveGotoNamedPOIRebirth-ParseBinding");
|
||||
string id = base.ID;
|
||||
string value = base.Value;
|
||||
if (bindingName != null)
|
||||
{
|
||||
if (!(bindingName == "name"))
|
||||
{
|
||||
if (!(bindingName == "distance"))
|
||||
{
|
||||
if (bindingName == "direction")
|
||||
{
|
||||
if (base.OwnerQuest.QuestGiverID != -1)
|
||||
{
|
||||
EntityNPC entityNPC = GameManager.Instance.World.GetEntity(base.OwnerQuest.QuestGiverID) as EntityNPC;
|
||||
if (entityNPC != null)
|
||||
{
|
||||
this.position.y = 0f;
|
||||
Vector3 position = entityNPC.position;
|
||||
position.y = 0f;
|
||||
return ValueDisplayFormatters.Direction(GameUtils.GetDirByNormal(new Vector2(this.position.x - position.x, this.position.z - position.z)), false);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (base.OwnerQuest.QuestGiverID != -1)
|
||||
{
|
||||
EntityNPC entityNPC2 = GameManager.Instance.World.GetEntity(base.OwnerQuest.QuestGiverID) as EntityNPC;
|
||||
if (entityNPC2 != null)
|
||||
{
|
||||
Vector3 position2 = entityNPC2.position;
|
||||
this.currentDistance = Vector3.Distance(position2, this.position);
|
||||
return ValueDisplayFormatters.Distance(this.currentDistance);
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (SingletonMonoBehaviour<ConnectionManager>.Instance.IsServer)
|
||||
{
|
||||
if (base.OwnerQuest.DataVariables.ContainsKey("POIName"))
|
||||
{
|
||||
return base.OwnerQuest.DataVariables["POIName"];
|
||||
}
|
||||
if (base.OwnerQuest.QuestPrefab == null)
|
||||
{
|
||||
return "";
|
||||
}
|
||||
return base.OwnerQuest.QuestPrefab.location.Name;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (!base.OwnerQuest.DataVariables.ContainsKey("POIName"))
|
||||
{
|
||||
return "";
|
||||
}
|
||||
return base.OwnerQuest.DataVariables["POIName"];
|
||||
}
|
||||
}
|
||||
return "";
|
||||
}
|
||||
}
|
||||
79
Scripts/Quests/ObjectiveGotoRandomNPCRebirth.cs
Normal file
79
Scripts/Quests/ObjectiveGotoRandomNPCRebirth.cs
Normal file
@@ -0,0 +1,79 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Globalization;
|
||||
|
||||
// Token: 0x0200055C RID: 1372
|
||||
public class ObjectiveGotoRandomNPCRebirth : ObjectiveGotoRandomSDX
|
||||
{
|
||||
public override bool NeedsNPCSetPosition
|
||||
{
|
||||
get
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
public override bool SetupPosition(EntityNPC ownerNPC = null, EntityPlayer player = null, List<Vector2> usedPOILocations = null, int entityIDforQuests = -1)
|
||||
{
|
||||
return this.GetPosition(ownerNPC) != Vector3.zero;
|
||||
}
|
||||
|
||||
protected Vector3 GetPosition(EntityNPC ownerNPC)
|
||||
{
|
||||
if (base.OwnerQuest.GetPositionData(out this.position, Quest.PositionDataTypes.Location))
|
||||
{
|
||||
base.OwnerQuest.Position = this.position;
|
||||
this.positionSet = true;
|
||||
base.OwnerQuest.HandleMapObject(Quest.PositionDataTypes.Location, this.NavObjectName, -1);
|
||||
base.CurrentValue = 2;
|
||||
return this.position;
|
||||
}
|
||||
if (base.OwnerQuest.GetPositionData(out this.position, Quest.PositionDataTypes.TreasurePoint))
|
||||
{
|
||||
this.positionSet = true;
|
||||
base.OwnerQuest.SetPositionData(Quest.PositionDataTypes.Location, base.OwnerQuest.Position);
|
||||
base.CurrentValue = 2;
|
||||
return this.position;
|
||||
}
|
||||
float distance = 50f;
|
||||
if (base.Value != null && base.Value != "" && !StringParsers.TryParseFloat(base.Value, out distance, 0, -1, NumberStyles.Any) && base.Value.Contains("-"))
|
||||
{
|
||||
string[] array = base.Value.Split(new char[]
|
||||
{
|
||||
'-'
|
||||
});
|
||||
float num = StringParsers.ParseFloat(array[0], 0, -1, NumberStyles.Any);
|
||||
float num2 = StringParsers.ParseFloat(array[1], 0, -1, NumberStyles.Any);
|
||||
distance = GameManager.Instance.World.GetGameRandom().RandomFloat * (num2 - num) + num;
|
||||
}
|
||||
if (SingletonMonoBehaviour<ConnectionManager>.Instance.IsServer)
|
||||
{
|
||||
Vector3i vector3i = ObjectiveGotoRandomNPCRebirth.CalculateRandomPoint(ownerNPC.entityId, distance, base.OwnerQuest.ID);
|
||||
if (!GameManager.Instance.World.CheckForLevelNearbyHeights((float)vector3i.x, (float)vector3i.z, 5) || GameManager.Instance.World.GetWaterAt((float)vector3i.x, (float)vector3i.z))
|
||||
{
|
||||
return Vector3.zero;
|
||||
}
|
||||
World world = GameManager.Instance.World;
|
||||
if (vector3i.y > 0 && world.IsPositionInBounds(this.position) && !world.IsPositionWithinPOI(this.position, 5))
|
||||
{
|
||||
base.FinalizePoint(vector3i.x, vector3i.y, vector3i.z);
|
||||
return this.position;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
SingletonMonoBehaviour<ConnectionManager>.Instance.SendToServer(NetPackageManager.GetPackage<NetPackageQuestTreasurePoint>().Setup(ownerNPC.entityId, distance, 1, base.OwnerQuest.QuestCode, 0, -1, 0, false), false);
|
||||
base.CurrentValue = 1;
|
||||
}
|
||||
return Vector3.zero;
|
||||
}
|
||||
|
||||
public override BaseObjective Clone()
|
||||
{
|
||||
ObjectiveGotoRandomNPCRebirth objectiveRandomGotoNPC = new ObjectiveGotoRandomNPCRebirth();
|
||||
this.CopyValues(objectiveRandomGotoNPC);
|
||||
objectiveRandomGotoNPC.position = this.position;
|
||||
objectiveRandomGotoNPC.positionSet = this.positionSet;
|
||||
objectiveRandomGotoNPC.completionDistance = this.completionDistance;
|
||||
return objectiveRandomGotoNPC;
|
||||
}
|
||||
}
|
||||
326
Scripts/Quests/ObjectiveGotoRandomSDX.cs
Normal file
326
Scripts/Quests/ObjectiveGotoRandomSDX.cs
Normal file
@@ -0,0 +1,326 @@
|
||||
using System.Globalization;
|
||||
|
||||
public class ObjectiveGotoRandomSDX : BaseObjective
|
||||
{
|
||||
public override BaseObjective.ObjectiveValueTypes ObjectiveValueType
|
||||
{
|
||||
get
|
||||
{
|
||||
return BaseObjective.ObjectiveValueTypes.Distance;
|
||||
}
|
||||
}
|
||||
|
||||
public override void SetupObjective()
|
||||
{
|
||||
this.keyword = Localization.Get("ObjectiveRallyPointHeadTo");
|
||||
this.SetupIcon();
|
||||
}
|
||||
|
||||
public override bool UpdateUI
|
||||
{
|
||||
get
|
||||
{
|
||||
return base.ObjectiveState != BaseObjective.ObjectiveStates.Failed;
|
||||
}
|
||||
}
|
||||
|
||||
public override void SetupDisplay()
|
||||
{
|
||||
base.Description = this.keyword;
|
||||
this.StatusText = "";
|
||||
}
|
||||
|
||||
public override string StatusText
|
||||
{
|
||||
get
|
||||
{
|
||||
if (base.OwnerQuest.CurrentState == Quest.QuestState.InProgress)
|
||||
{
|
||||
return ValueDisplayFormatters.Distance(this.distance);
|
||||
}
|
||||
if (base.OwnerQuest.CurrentState == Quest.QuestState.NotStarted)
|
||||
{
|
||||
return "";
|
||||
}
|
||||
if (base.ObjectiveState == BaseObjective.ObjectiveStates.Failed)
|
||||
{
|
||||
return Localization.Get("failed");
|
||||
}
|
||||
return Localization.Get("completed");
|
||||
}
|
||||
}
|
||||
|
||||
public override void AddHooks()
|
||||
{
|
||||
QuestEventManager.Current.AddObjectiveToBeUpdated(this);
|
||||
base.OwnerQuest.HandleMapObject(Quest.PositionDataTypes.Location, this.NavObjectName, -1);
|
||||
}
|
||||
|
||||
public override void RemoveHooks()
|
||||
{
|
||||
QuestEventManager.Current.RemoveObjectiveToBeUpdated(this);
|
||||
}
|
||||
|
||||
protected virtual void SetupIcon()
|
||||
{
|
||||
}
|
||||
|
||||
protected virtual Vector3 GetPosition()
|
||||
{
|
||||
//Log.Out("ObjectiveGotoRandomSDX-GetPosition START");
|
||||
|
||||
//Log.Out("ObjectiveGotoRandomSDX-GetPosition this.position.x: " + this.position.x);
|
||||
//Log.Out("ObjectiveGotoRandomSDX-GetPosition this.position.y: " + this.position.y);
|
||||
//Log.Out("ObjectiveGotoRandomSDX-GetPosition this.position.z: " + this.position.z);
|
||||
|
||||
if (base.OwnerQuest.GetPositionData(out this.position, Quest.PositionDataTypes.Location))
|
||||
{
|
||||
//Log.Out("ObjectiveGotoRandomSDX-GetPosition 1");
|
||||
base.OwnerQuest.Position = this.position;
|
||||
this.positionSet = true;
|
||||
base.OwnerQuest.HandleMapObject(Quest.PositionDataTypes.Location, this.NavObjectName, -1);
|
||||
base.CurrentValue = 2;
|
||||
return this.position;
|
||||
}
|
||||
if (base.OwnerQuest.GetPositionData(out this.position, Quest.PositionDataTypes.TreasurePoint))
|
||||
{
|
||||
//Log.Out("ObjectiveGotoRandomSDX-GetPosition 2");
|
||||
this.positionSet = true;
|
||||
base.OwnerQuest.SetPositionData(Quest.PositionDataTypes.Location, base.OwnerQuest.Position);
|
||||
base.OwnerQuest.HandleMapObject(Quest.PositionDataTypes.Location, this.NavObjectName, -1);
|
||||
base.CurrentValue = 2;
|
||||
return this.position;
|
||||
}
|
||||
EntityPlayer ownerPlayer = base.OwnerQuest.OwnerJournal.OwnerPlayer;
|
||||
float num = 50f;
|
||||
if (base.Value != null && base.Value != "" && !StringParsers.TryParseFloat(base.Value, out num, 0, -1, NumberStyles.Any) && base.Value.Contains("-"))
|
||||
{
|
||||
//Log.Out("ObjectiveGotoRandomSDX-GetPosition 3");
|
||||
string[] array = base.Value.Split(new char[]
|
||||
{
|
||||
'-'
|
||||
});
|
||||
float num2 = StringParsers.ParseFloat(array[0], 0, -1, NumberStyles.Any);
|
||||
float num3 = StringParsers.ParseFloat(array[1], 0, -1, NumberStyles.Any);
|
||||
num = GameManager.Instance.World.GetGameRandom().RandomFloat * (num3 - num2) + num2;
|
||||
}
|
||||
//Log.Out("ObjectiveGotoRandomSDX-GetPosition Instance.IsServer: " + SingletonMonoBehaviour<ConnectionManager>.Instance.IsServer);
|
||||
if (SingletonMonoBehaviour<ConnectionManager>.Instance.IsServer)
|
||||
{
|
||||
//Log.Out("ObjectiveGotoRandomSDX-GetPosition 4");
|
||||
Vector3i vector3i = ObjectiveGotoRandomSDX.CalculateRandomPoint(ownerPlayer.entityId, num, base.OwnerQuest.ID);
|
||||
if (!GameManager.Instance.World.CheckForLevelNearbyHeights((float)vector3i.x, (float)vector3i.z, 5) || GameManager.Instance.World.GetWaterAt((float)vector3i.x, (float)vector3i.z))
|
||||
{
|
||||
//Log.Out("ObjectiveGotoRandomSDX-GetPosition 4a");
|
||||
return Vector3.zero;
|
||||
}
|
||||
World world = GameManager.Instance.World;
|
||||
|
||||
Vector3 vector3 = new Vector3((float)vector3i.x, (float)vector3i.y, (float)vector3i.z);
|
||||
|
||||
//Log.Out("ObjectiveGotoRandomSDX-GetPosition vector3i.y: " + vector3i.y);
|
||||
//Log.Out("ObjectiveGotoRandomSDX-GetPosition IsPositionInBounds: " + world.IsPositionInBounds(vector3));
|
||||
//Log.Out("ObjectiveGotoRandomSDX-GetPosition IsPositionWithinPOI: " + world.IsPositionWithinPOI(vector3, 5));
|
||||
|
||||
if (vector3i.y > 0 && world.IsPositionInBounds(vector3) && !world.IsPositionWithinPOI(vector3, 5))
|
||||
{
|
||||
//Log.Out("ObjectiveGotoRandomSDX-GetPosition 4b");
|
||||
this.FinalizePoint(vector3i.x, vector3i.y, vector3i.z);
|
||||
return this.position;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
//Log.Out("ObjectiveGotoRandomSDX-GetPosition 5");
|
||||
SingletonMonoBehaviour<ConnectionManager>.Instance.SendToServer(NetPackageManager.GetPackage<NetPackageQuestPointTreasureSDX>().Setup(ownerPlayer.entityId, num, 1, base.OwnerQuest.QuestCode, 0, -1, 0, false), false);
|
||||
base.CurrentValue = 1;
|
||||
}
|
||||
|
||||
//Log.Out("ObjectiveGotoRandomSDX-GetPosition END");
|
||||
|
||||
return Vector3.zero;
|
||||
}
|
||||
|
||||
public static Vector3i CalculateRandomPoint(int entityID, float distance, string questID)
|
||||
{
|
||||
//Log.Out("ObjectiveGotoRandomSDX-CalculateRandomPoint START");
|
||||
//Log.Out("ObjectiveGotoRandomSDX-CalculateRandomPoint distance: " + distance);
|
||||
|
||||
World world = GameManager.Instance.World;
|
||||
EntityAlive entityAlive = world.GetEntity(entityID) as EntityAlive;
|
||||
var vector = new Vector3(world.GetGameRandom().RandomFloat * 2f + -1f, 0f, world.GetGameRandom().RandomFloat * 2f + -1f);
|
||||
vector.Normalize();
|
||||
Vector3 vector2 = entityAlive.position + vector * distance;
|
||||
int x = (int)vector2.x;
|
||||
int z = (int)vector2.z;
|
||||
int y = (int)world.GetHeightAt(vector2.x, vector2.z);
|
||||
|
||||
//Log.Out("ObjectiveGotoRandomSDX-CalculateRandomPoint x: " + x);
|
||||
//Log.Out("ObjectiveGotoRandomSDX-CalculateRandomPoint y: " + y);
|
||||
//Log.Out("ObjectiveGotoRandomSDX-CalculateRandomPoint z: " + z);
|
||||
|
||||
Vector3i vector3i = new Vector3i(x, y, z);
|
||||
Vector3 vector3 = new Vector3((float)vector3i.x, (float)vector3i.y, (float)vector3i.z);
|
||||
|
||||
//Log.Out("ObjectiveGotoRandomSDX-CalculateRandomPoint IsPositionInBounds: " + world.IsPositionInBounds(vector3));
|
||||
//Log.Out("ObjectiveGotoRandomSDX-CalculateRandomPoint CanPlaceBlockAt: " + world.CanPlaceBlockAt(vector3i, GameManager.Instance.GetPersistentLocalPlayer(), false));
|
||||
//Log.Out("ObjectiveGotoRandomSDX-CalculateRandomPoint IsPositionWithinPOI: " + world.IsPositionWithinPOI(vector3, 2));
|
||||
|
||||
if (!world.IsPositionInBounds(vector3) || (entityAlive is EntityPlayer && !world.CanPlaceBlockAt(vector3i, GameManager.Instance.GetPersistentLocalPlayer(), false)) || world.IsPositionWithinPOI(vector3, 2))
|
||||
{
|
||||
//Log.Out("ObjectiveGotoRandomSDX-CalculateRandomPoint 1");
|
||||
return new Vector3i(0, -99999, 0);
|
||||
}
|
||||
|
||||
//Log.Out("ObjectiveGotoRandomSDX-CalculateRandomPoint CheckForLevelNearbyHeights: " + world.CheckForLevelNearbyHeights(vector2.x, vector2.z, 5));
|
||||
//Log.Out("ObjectiveGotoRandomSDX-CalculateRandomPoint GetWaterAt: " + world.GetWaterAt(vector2.x, vector2.z));
|
||||
|
||||
|
||||
if (!world.CheckForLevelNearbyHeights(vector2.x, vector2.z, 5) || world.GetWaterAt(vector2.x, vector2.z))
|
||||
{
|
||||
//Log.Out("ObjectiveGotoRandomSDX-CalculateRandomPoint 2");
|
||||
return new Vector3i(0, -99999, 0);
|
||||
}
|
||||
//Log.Out("ObjectiveGotoRandomSDX-CalculateRandomPoint END");
|
||||
|
||||
return vector3i;
|
||||
}
|
||||
|
||||
public void FinalizePoint(int x, int y, int z)
|
||||
{
|
||||
//Log.Out("ObjectiveGotoRandomSDX-FinalizePoint START");
|
||||
this.position = new Vector3((float)x, (float)y, (float)z);
|
||||
base.OwnerQuest.SetPositionData(Quest.PositionDataTypes.Location, this.position);
|
||||
base.OwnerQuest.Position = this.position;
|
||||
this.positionSet = true;
|
||||
base.OwnerQuest.HandleMapObject(Quest.PositionDataTypes.Location, this.NavObjectName, -1);
|
||||
base.CurrentValue = 2;
|
||||
}
|
||||
|
||||
public override void Update(float deltaTime)
|
||||
{
|
||||
if (Time.time > this.updateTime)
|
||||
{
|
||||
this.updateTime = Time.time + 1f;
|
||||
if (!this.positionSet && base.CurrentValue != 1)
|
||||
{
|
||||
//Log.Out("ObjectiveGotoRandomSDX-Update 1");
|
||||
bool position = this.GetPosition() != Vector3.zero;
|
||||
}
|
||||
switch (base.CurrentValue)
|
||||
{
|
||||
case 0:
|
||||
//Log.Out("ObjectiveGotoRandomSDX-Update 2");
|
||||
bool flag = this.GetPosition() != Vector3.zero;
|
||||
return;
|
||||
case 1:
|
||||
//Log.Out("ObjectiveGotoRandomSDX-Update 3");
|
||||
break;
|
||||
case 2:
|
||||
{
|
||||
//Log.Out("ObjectiveGotoRandomSDX-Update 4");
|
||||
Entity ownerPlayer = base.OwnerQuest.OwnerJournal.OwnerPlayer;
|
||||
if (base.OwnerQuest.NavObject != null && base.OwnerQuest.NavObject.TrackedPosition != this.position)
|
||||
{
|
||||
//Log.Out("ObjectiveGotoRandomSDX-Update 5");
|
||||
base.OwnerQuest.NavObject.TrackedPosition = this.position;
|
||||
}
|
||||
Vector3 vector = ownerPlayer.position;
|
||||
this.distance = Vector3.Distance(vector, this.position);
|
||||
if (this.distance < this.completionDistance && base.OwnerQuest.CheckRequirements())
|
||||
{
|
||||
//Log.Out("ObjectiveGotoRandomSDX-Update 6");
|
||||
base.CurrentValue = 3;
|
||||
this.Refresh();
|
||||
return;
|
||||
}
|
||||
break;
|
||||
}
|
||||
case 3:
|
||||
{
|
||||
//Log.Out("ObjectiveGotoRandomSDX-Update 7");
|
||||
if (this.completeWithinRange)
|
||||
{
|
||||
//Log.Out("ObjectiveGotoRandomSDX-Update 8");
|
||||
QuestEventManager.Current.RemoveObjectiveToBeUpdated(this);
|
||||
return;
|
||||
}
|
||||
Entity ownerPlayer2 = base.OwnerQuest.OwnerJournal.OwnerPlayer;
|
||||
if (base.OwnerQuest.NavObject != null && base.OwnerQuest.NavObject.TrackedPosition != this.position)
|
||||
{
|
||||
//Log.Out("ObjectiveGotoRandomSDX-Update 9");
|
||||
base.OwnerQuest.NavObject.TrackedPosition = this.position;
|
||||
}
|
||||
Vector3 vector2 = ownerPlayer2.position;
|
||||
this.distance = Vector3.Distance(vector2, this.position);
|
||||
if (this.distance > this.completionDistance)
|
||||
{
|
||||
//Log.Out("ObjectiveGotoRandomSDX-Update 10");
|
||||
base.CurrentValue = 2;
|
||||
this.Refresh();
|
||||
}
|
||||
break;
|
||||
}
|
||||
default:
|
||||
//Log.Out("ObjectiveGotoRandomSDX-Update 11");
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public override void Refresh()
|
||||
{
|
||||
bool complete = base.CurrentValue == 3;
|
||||
base.Complete = complete;
|
||||
if (base.Complete)
|
||||
{
|
||||
base.OwnerQuest.RefreshQuestCompletion(QuestClass.CompletionTypes.AutoComplete, null, this.PlayObjectiveComplete);
|
||||
}
|
||||
}
|
||||
|
||||
public override BaseObjective Clone()
|
||||
{
|
||||
ObjectiveGotoRandomSDX objectiveRandomGoto = new ObjectiveGotoRandomSDX();
|
||||
this.CopyValues(objectiveRandomGoto);
|
||||
objectiveRandomGoto.position = this.position;
|
||||
objectiveRandomGoto.positionSet = this.positionSet;
|
||||
objectiveRandomGoto.completionDistance = this.completionDistance;
|
||||
return objectiveRandomGoto;
|
||||
}
|
||||
|
||||
public override bool SetLocation(Vector3 pos, Vector3 size)
|
||||
{
|
||||
this.FinalizePoint((int)pos.x, (int)pos.y, (int)pos.z);
|
||||
return true;
|
||||
}
|
||||
|
||||
public override void ParseProperties(DynamicProperties properties)
|
||||
{
|
||||
base.ParseProperties(properties);
|
||||
if (properties.Values.ContainsKey(ObjectiveGotoRandomSDX.PropDistance))
|
||||
{
|
||||
base.Value = properties.Values[ObjectiveGotoRandomSDX.PropDistance];
|
||||
}
|
||||
if (properties.Values.ContainsKey(ObjectiveGotoRandomSDX.PropCompletionDistance))
|
||||
{
|
||||
this.completionDistance = StringParsers.ParseFloat(properties.Values[ObjectiveGotoRandomSDX.PropCompletionDistance], 0, -1, NumberStyles.Any);
|
||||
}
|
||||
}
|
||||
|
||||
protected bool positionSet;
|
||||
protected float distance;
|
||||
protected float completionDistance = 10f;
|
||||
protected Vector3 position;
|
||||
protected string icon = "ui_game_symbol_quest";
|
||||
private float updateTime;
|
||||
protected bool completeWithinRange = true;
|
||||
public static string PropDistance = "distance";
|
||||
public static string PropCompletionDistance = "completion_distance";
|
||||
protected enum GotoStates
|
||||
{
|
||||
NoPosition,
|
||||
WaitingForPoint,
|
||||
TryComplete,
|
||||
Completed
|
||||
}
|
||||
}
|
||||
125
Scripts/Quests/ObjectiveInteractWithNPCRebirth.cs
Normal file
125
Scripts/Quests/ObjectiveInteractWithNPCRebirth.cs
Normal file
@@ -0,0 +1,125 @@
|
||||
using System.Collections.Generic;
|
||||
|
||||
public class ObjectiveInteractWithNPCRebirth : BaseObjective
|
||||
{
|
||||
public override void SetupObjective()
|
||||
{
|
||||
//Log.Out("ObjectiveInteractWithNPCRebirth-SetupObjective");
|
||||
}
|
||||
|
||||
public override void SetupDisplay()
|
||||
{
|
||||
//Log.Out("ObjectiveInteractWithNPCRebirth-SetupDisplay");
|
||||
Description = Localization.Get("ObjectiveTalkToTrader_" + traderID);
|
||||
StatusText = "";
|
||||
}
|
||||
|
||||
public override bool PlayObjectiveComplete
|
||||
{
|
||||
get
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
public override void AddHooks()
|
||||
{
|
||||
//Log.Out("ObjectiveInteractWithNPCRebirth-AddHooks");
|
||||
QuestEventManager.Current.NPCInteract += Current_NPCInteract;
|
||||
if (useClosest)
|
||||
{
|
||||
List<Entity> entitiesInBounds = GameManager.Instance.World.GetEntitiesInBounds(null, new Bounds(OwnerQuest.Position, new Vector3(50f, 50f, 50f)));
|
||||
|
||||
if (entitiesInBounds != null && entitiesInBounds.Count > 0)
|
||||
{
|
||||
for (int i = 0; i < entitiesInBounds.Count; i++)
|
||||
{
|
||||
if (entitiesInBounds[i] is EntityNPC)
|
||||
{
|
||||
OwnerQuest.SetPositionData(Quest.PositionDataTypes.QuestGiver, entitiesInBounds[i].position);
|
||||
OwnerQuest.QuestGiverID = entitiesInBounds[i].entityId;
|
||||
OwnerQuest.QuestFaction = ((EntityNPC)entitiesInBounds[i]).NPCInfo.QuestFaction;
|
||||
OwnerQuest.RallyMarkerActivated = true;
|
||||
OwnerQuest.HandleMapObject(Quest.PositionDataTypes.QuestGiver, NavObjectName, -1);
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public override void RemoveHooks()
|
||||
{
|
||||
//Log.Out("ObjectiveInteractWithNPCRebirth-RemoveHooks");
|
||||
QuestEventManager.Current.NPCInteract -= Current_NPCInteract;
|
||||
}
|
||||
|
||||
private void Current_NPCInteract(EntityNPC npc)
|
||||
{
|
||||
/*Log.Out("ObjectiveInteractWithNPCRebirth-Current_NPCInteract EntityName: " + npc.EntityName);
|
||||
Log.Out("ObjectiveInteractWithNPCRebirth-Current_NPCInteract entityClassName: " + npc.EntityClass.entityClassName);
|
||||
Log.Out("ObjectiveInteractWithNPCRebirth-Current_NPCInteract traderID: " + traderID);*/
|
||||
|
||||
string[] words = traderID.Split('~');
|
||||
|
||||
for (int i = 0; i < words.Length; i++)
|
||||
{
|
||||
if (npc.EntityClass.entityClassName == words[i])
|
||||
{
|
||||
if (OwnerQuest.QuestFaction == 0)
|
||||
{
|
||||
OwnerQuest.QuestFaction = npc.NPCInfo.QuestFaction;
|
||||
}
|
||||
traderName = npc.EntityName;
|
||||
CurrentValue = 1;
|
||||
Refresh();
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public override void Refresh()
|
||||
{
|
||||
//Log.Out("ObjectiveInteractWithNPCRebirth-Refresh");
|
||||
if (Complete) return;
|
||||
|
||||
bool complete = CurrentValue == 1;
|
||||
Complete = complete;
|
||||
if (Complete)
|
||||
{
|
||||
OwnerQuest.RefreshQuestCompletion(QuestClass.CompletionTypes.AutoComplete, null, PlayObjectiveComplete);
|
||||
}
|
||||
}
|
||||
|
||||
public override BaseObjective Clone()
|
||||
{
|
||||
//Log.Out("ObjectiveInteractWithNPCRebirth-Clone");
|
||||
ObjectiveInteractWithNPCRebirth ObjectiveInteractWithNPCRebirth = new ObjectiveInteractWithNPCRebirth();
|
||||
CopyValues(ObjectiveInteractWithNPCRebirth);
|
||||
ObjectiveInteractWithNPCRebirth.useClosest = useClosest;
|
||||
ObjectiveInteractWithNPCRebirth.traderID = traderID;
|
||||
return ObjectiveInteractWithNPCRebirth;
|
||||
}
|
||||
|
||||
public override void ParseProperties(DynamicProperties properties)
|
||||
{
|
||||
//Log.Out("ObjectiveInteractWithNPCRebirth-ParseProperties");
|
||||
base.ParseProperties(properties);
|
||||
if (properties.Values.ContainsKey(PropUseClosest))
|
||||
{
|
||||
useClosest = StringParsers.ParseBool(properties.Values[PropUseClosest], 0, -1, true);
|
||||
}
|
||||
if (properties.Values.ContainsKey(PropTraderName))
|
||||
{
|
||||
traderID = properties.Values[PropTraderName];
|
||||
}
|
||||
//Log.Out("ObjectiveInteractWithNPCRebirth-ParseProperties, this.traderID: " + this.traderID);
|
||||
}
|
||||
|
||||
public static string PropUseClosest = "use_closest";
|
||||
public static string PropTraderName = "trader_id";
|
||||
|
||||
private bool useClosest;
|
||||
private string traderID = "";
|
||||
private string traderName = "";
|
||||
}
|
||||
294
Scripts/Quests/ObjectiveRandomGotoPOISDX.cs
Normal file
294
Scripts/Quests/ObjectiveRandomGotoPOISDX.cs
Normal file
@@ -0,0 +1,294 @@
|
||||
using System.Collections.Generic;
|
||||
|
||||
public class ObjectiveRandomGotoPOISDX : ObjectiveRandomPOIGoto
|
||||
{
|
||||
public override void SetupObjective()
|
||||
{
|
||||
//Log.Out("ObjectiveRandomGotoPOISDX-SetupObjective");
|
||||
this.keyword = Localization.Get("ObjectiveRallyPointHeadTo");
|
||||
}
|
||||
|
||||
public override void SetupIcon()
|
||||
{
|
||||
//Log.Out("ObjectiveRandomGotoPOISDX-SetupIcon");
|
||||
this.icon = "ui_game_symbol_quest";
|
||||
}
|
||||
|
||||
public override bool NeedsNPCSetPosition
|
||||
{
|
||||
get
|
||||
{
|
||||
//Log.Out("ObjectiveRandomGotoPOISDX-NeedsNPCSetPosition");
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
public override bool SetupPosition(EntityNPC ownerNPC = null, EntityPlayer player = null, List<Vector2> usedPOILocations = null, int entityIDforQuests = -1)
|
||||
{
|
||||
//Log.Out("ObjectiveRandomGotoPOISDX-SetupPosition");
|
||||
return this.GetPosition(ownerNPC, player, usedPOILocations, entityIDforQuests) != Vector3.zero;
|
||||
}
|
||||
|
||||
public override void AddHooks()
|
||||
{
|
||||
//Log.Out("ObjectiveRandomGotoPOISDX-AddHooks");
|
||||
base.AddHooks();
|
||||
base.OwnerQuest.HandleMapObject(Quest.PositionDataTypes.POIPosition, this.NavObjectName, -1);
|
||||
}
|
||||
|
||||
public void SetDistanceOffset(Vector3 POISize)
|
||||
{
|
||||
//Log.Out("ObjectiveRandomGotoPOISDX-SetDistanceOffset");
|
||||
if (POISize.x > POISize.z)
|
||||
{
|
||||
this.distanceOffset = POISize.x;
|
||||
return;
|
||||
}
|
||||
this.distanceOffset = POISize.z;
|
||||
}
|
||||
|
||||
public override void SetPosition(Vector3 POIPosition, Vector3 POISize)
|
||||
{
|
||||
//Log.Out("ObjectiveRandomGotoPOISDX-SetPosition");
|
||||
this.SetDistanceOffset(POISize);
|
||||
base.OwnerQuest.SetPositionData(Quest.PositionDataTypes.POIPosition, POIPosition);
|
||||
base.OwnerQuest.SetPositionData(Quest.PositionDataTypes.POISize, POISize);
|
||||
base.OwnerQuest.Position = POIPosition;
|
||||
this.position = POIPosition;
|
||||
}
|
||||
|
||||
public override Vector3 GetPosition(EntityNPC ownerNPC = null, EntityPlayer entityPlayer = null, List<Vector2> usedPOILocations = null, int entityIDforQuests = -1)
|
||||
{
|
||||
/*Log.Out("ObjectiveRandomGotoPOISDX-GetPosition");
|
||||
Log.Out("ObjectiveRandomGotoPOISDX-GetPosition, X: " + ownerNPC.position.x);
|
||||
Log.Out("ObjectiveRandomGotoPOISDX-GetPosition, Y: " + ownerNPC.position.y);
|
||||
Log.Out("ObjectiveRandomGotoPOISDX-GetPosition, Z: " + ownerNPC.position.z);*/
|
||||
if (base.OwnerQuest.GetPositionData(out this.position, Quest.PositionDataTypes.POIPosition))
|
||||
{
|
||||
//Log.Out("ObjectiveRandomGotoPOISDX-GetPosition-1");
|
||||
Vector3 vector;
|
||||
base.OwnerQuest.GetPositionData(out vector, Quest.PositionDataTypes.POISize);
|
||||
Vector2 vector2 = new Vector2(this.position.x + vector.x / 2f, this.position.z + vector.z / 2f);
|
||||
int num = (int)vector2.x;
|
||||
int num2 = (int)vector2.y;
|
||||
int num3 = (int)GameManager.Instance.World.GetHeightAt(vector2.x, vector2.y);
|
||||
this.position = new Vector3((float)num, (float)num3, (float)num2);
|
||||
base.OwnerQuest.Position = this.position;
|
||||
this.SetDistanceOffset(vector);
|
||||
this.positionSet = true;
|
||||
base.OwnerQuest.HandleMapObject(Quest.PositionDataTypes.POIPosition, this.NavObjectName, -1);
|
||||
base.CurrentValue = 2;
|
||||
return this.position;
|
||||
}
|
||||
//Log.Out("ObjectiveRandomGotoPOISDX-GetPosition: log1");
|
||||
EntityAlive entityAlive = null;
|
||||
if (ownerNPC == null)
|
||||
{
|
||||
entityAlive = base.OwnerQuest.OwnerJournal.OwnerPlayer;
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
entityAlive = ownerNPC;
|
||||
}
|
||||
if (SingletonMonoBehaviour<ConnectionManager>.Instance.IsServer)
|
||||
{
|
||||
//Log.Out("ObjectiveRandomGotoPOISDX-GetPosition-current position: x:" + entityAlive.position.x + ", z:" + entityAlive.position.z);
|
||||
//Log.Out("ObjectiveRandomGotoPOISDX-GetPosition base.OwnerQuest.QuestTags:" + base.OwnerQuest.QuestTags);
|
||||
//Log.Out("ObjectiveRandomGotoPOISDX-GetPosition this.OwnerQuest.QuestClass.DifficultyTier:" + (byte)this.OwnerQuest.QuestClass.DifficultyTier);
|
||||
//Log.Out("ObjectiveRandomGotoPOISDX-GetPosition this.biomeFilterType:" + this.biomeFilterType);
|
||||
//Log.Out("ObjectiveRandomGotoPOISDX-GetPosition this.biomeFilter:" + this.biomeFilter);
|
||||
PrefabInstance prefabInstance;
|
||||
prefabInstance = GameManager.Instance.World.ChunkClusters[0].ChunkProvider.GetDynamicPrefabDecorator().GetRandomPOINearWorldPos(new Vector2(entityAlive.position.x, entityAlive.position.z), 1000, 4000000, base.OwnerQuest.QuestTags, (byte)this.OwnerQuest.QuestClass.DifficultyTier, usedPOILocations, entityIDforQuests, this.biomeFilterType, this.biomeFilter);
|
||||
|
||||
float numPlayerX = entityAlive.position.x;
|
||||
float numPlayerZ = entityAlive.position.z;
|
||||
|
||||
if (prefabInstance != null)
|
||||
{
|
||||
Vector2 vector3a = new Vector2((float)prefabInstance.boundingBoxPosition.x + (float)prefabInstance.boundingBoxSize.x / 2f, (float)prefabInstance.boundingBoxPosition.z + (float)prefabInstance.boundingBoxSize.z / 2f);
|
||||
|
||||
float numPreFabX = (float)vector3a.x;
|
||||
float numPreFabZ = (float)vector3a.y;
|
||||
|
||||
float numDiffXa = Math.Abs(numPreFabX - numPlayerX);
|
||||
float numDiffZa = Math.Abs(numPreFabZ - numPlayerZ);
|
||||
float numDiffa = Math.Abs(numDiffXa + numDiffZa);
|
||||
|
||||
/*Log.Out("ObjectiveRandomGotoPOISDX-GetPosition-Prefab Name:" + prefabInstance.name);
|
||||
|
||||
Log.Out("ObjectiveRandomGotoPOISDX-GetPosition-Distance:" + this.Value);
|
||||
|
||||
Log.Out("ObjectiveRandomGotoPOISDX-GetPosition-Original Prefab diffXa:" + numDiffXa + ", diffZa: " + numDiffZa);
|
||||
Log.Out("ObjectiveRandomGotoPOISDX-GetPosition-Original Prefab diff:" + numDiffa);*/
|
||||
|
||||
int minDistance = 0;
|
||||
int maxDistance = 0;
|
||||
|
||||
if (this.Value != null)
|
||||
{
|
||||
string[] words = this.Value.Split('-');
|
||||
int valueCounter = 0;
|
||||
|
||||
foreach (String word in words)
|
||||
{
|
||||
//Log.Out("ObjectiveRandomGotoPOISDX-GetPosition-Split: " + word);
|
||||
valueCounter++;
|
||||
if (valueCounter == 1)
|
||||
{
|
||||
minDistance = Int32.Parse(word);
|
||||
}
|
||||
else
|
||||
{
|
||||
maxDistance = Int32.Parse(word);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//Log.Out("ObjectiveRandomGotoPOISDX-GetPosition-minDistance: " + minDistance + ", maxDistance: " + maxDistance);
|
||||
|
||||
for (int j = 0; j < 20; j++)
|
||||
{
|
||||
PrefabInstance prefabInstance2;
|
||||
prefabInstance2 = GameManager.Instance.World.ChunkClusters[0].ChunkProvider.GetDynamicPrefabDecorator().GetRandomPOINearWorldPos(new Vector2(entityAlive.position.x, entityAlive.position.z), 1000, 4000000, base.OwnerQuest.QuestTags, base.OwnerQuest.QuestClass.DifficultyTier, usedPOILocations, entityIDforQuests, this.biomeFilterType, this.biomeFilter);
|
||||
|
||||
if (prefabInstance2 != null)
|
||||
{
|
||||
Vector2 vector3b = new Vector2((float)prefabInstance2.boundingBoxPosition.x + (float)prefabInstance2.boundingBoxSize.x / 2f, (float)prefabInstance2.boundingBoxPosition.z + (float)prefabInstance2.boundingBoxSize.z / 2f);
|
||||
|
||||
numPreFabX = (float)vector3b.x;
|
||||
numPreFabZ = (float)vector3b.y;
|
||||
|
||||
float numDiffXb = Math.Abs(numPreFabX - numPlayerX);
|
||||
float numDiffZb = Math.Abs(numPreFabZ - numPlayerZ);
|
||||
float numDiffb = Math.Abs(numDiffXb + numDiffZb);
|
||||
|
||||
if (numDiffb < numDiffa)
|
||||
{
|
||||
if ((numDiffb > minDistance) && (numDiffb < maxDistance))
|
||||
{
|
||||
prefabInstance = prefabInstance2;
|
||||
numDiffa = numDiffb;
|
||||
//Log.Out("ObjectiveRandomGotoPOISDX-GetPosition-Prefab Name:" + prefabInstance.name);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//("ObjectiveRandomGotoPOISDX-GetPosition-New Prefab diffXb:" + numDiffXb + ", diffZb: " + numDiffZb);
|
||||
//Log.Out("ObjectiveRandomGotoPOISDX-GetPosition-New Prefab diff:" + numDiffb);
|
||||
}
|
||||
}
|
||||
|
||||
if (prefabInstance == null)
|
||||
{
|
||||
Log.Error("ObjectiveRandomGotoPOISDX: Null Prefab.");
|
||||
return Vector3.zero;
|
||||
}
|
||||
if (prefabInstance != null)
|
||||
{
|
||||
Vector2 vector3 = new Vector2((float)prefabInstance.boundingBoxPosition.x + (float)prefabInstance.boundingBoxSize.x / 2f, (float)prefabInstance.boundingBoxPosition.z + (float)prefabInstance.boundingBoxSize.z / 2f);
|
||||
if (vector3.x == -0.1f && vector3.y == -0.1f)
|
||||
{
|
||||
Log.Error("ObjectiveRandomGotoPOISDX: No POI found.");
|
||||
return Vector3.zero;
|
||||
}
|
||||
int num4 = (int)vector3.x;
|
||||
int num5 = (int)GameManager.Instance.World.GetHeightAt(vector3.x, vector3.y);
|
||||
int num6 = (int)vector3.y;
|
||||
this.position = new Vector3((float)num4, (float)num5, (float)num6);
|
||||
|
||||
//Log.Out("ObjectiveRandomGotoPOISDX-GetPosition-prefab position: x:" + this.position.x + ", z:" + this.position.z);
|
||||
|
||||
if (GameManager.Instance.World.IsPositionInBounds(this.position))
|
||||
{
|
||||
base.OwnerQuest.Position = this.position;
|
||||
base.FinalizePoint(new Vector3((float)prefabInstance.boundingBoxPosition.x, (float)prefabInstance.boundingBoxPosition.y, (float)prefabInstance.boundingBoxPosition.z), new Vector3((float)prefabInstance.boundingBoxSize.x, (float)prefabInstance.boundingBoxSize.y, (float)prefabInstance.boundingBoxSize.z));
|
||||
base.OwnerQuest.QuestPrefab = prefabInstance;
|
||||
base.OwnerQuest.DataVariables.Add("POIName", base.OwnerQuest.QuestPrefab.location.Name);
|
||||
if (usedPOILocations != null)
|
||||
{
|
||||
usedPOILocations.Add(new Vector2((float)prefabInstance.boundingBoxPosition.x, (float)prefabInstance.boundingBoxPosition.z));
|
||||
}
|
||||
return this.position;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
//Log.Out("ObjectiveRandomGotoPOISDX-GetPosition-3");
|
||||
SingletonMonoBehaviour<ConnectionManager>.Instance.SendToServer(NetPackageManager.GetPackage<NetPackageQuestPointGotoSDX>().Setup(entityAlive.entityId, base.OwnerQuest.QuestTags, base.OwnerQuest.QuestCode, NetPackageQuestPointGotoSDX.QuestGotoTypes.RandomPOI, base.OwnerQuest.QuestClass.DifficultyTier, 0, -1, 0f, 0f, 0f, -1f, this.biomeFilterType, this.biomeFilter), false);
|
||||
base.CurrentValue = 1;
|
||||
}
|
||||
//Log.Out("ObjectiveRandomGotoPOISDX-End");
|
||||
return Vector3.zero;
|
||||
}
|
||||
|
||||
public override BaseObjective Clone()
|
||||
{
|
||||
//Log.Out("ObjectiveRandomGotoPOISDX-Clone");
|
||||
ObjectiveRandomGotoPOISDX objectiveRandomPOIGoto = new ObjectiveRandomGotoPOISDX();
|
||||
this.CopyValues(objectiveRandomPOIGoto);
|
||||
return objectiveRandomPOIGoto;
|
||||
}
|
||||
|
||||
public override string ParseBinding(string bindingName)
|
||||
{
|
||||
//Log.Out("ObjectiveRandomGotoPOISDX-ParseBinding");
|
||||
string id = base.ID;
|
||||
string value = base.Value;
|
||||
if (bindingName != null)
|
||||
{
|
||||
if (!(bindingName == "name"))
|
||||
{
|
||||
if (!(bindingName == "distance"))
|
||||
{
|
||||
if (bindingName == "direction")
|
||||
{
|
||||
if (base.OwnerQuest.QuestGiverID != -1)
|
||||
{
|
||||
EntityNPC entityNPC = GameManager.Instance.World.GetEntity(base.OwnerQuest.QuestGiverID) as EntityNPC;
|
||||
if (entityNPC != null)
|
||||
{
|
||||
this.position.y = 0f;
|
||||
Vector3 position = entityNPC.position;
|
||||
position.y = 0f;
|
||||
return ValueDisplayFormatters.Direction(GameUtils.GetDirByNormal(new Vector2(this.position.x - position.x, this.position.z - position.z)), false);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (base.OwnerQuest.QuestGiverID != -1)
|
||||
{
|
||||
EntityNPC entityNPC2 = GameManager.Instance.World.GetEntity(base.OwnerQuest.QuestGiverID) as EntityNPC;
|
||||
if (entityNPC2 != null)
|
||||
{
|
||||
Vector3 position2 = entityNPC2.position;
|
||||
this.currentDistance = Vector3.Distance(position2, this.position);
|
||||
return ValueDisplayFormatters.Distance(this.currentDistance);
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (SingletonMonoBehaviour<ConnectionManager>.Instance.IsServer)
|
||||
{
|
||||
if (base.OwnerQuest.DataVariables.ContainsKey("POIName"))
|
||||
{
|
||||
return base.OwnerQuest.DataVariables["POIName"];
|
||||
}
|
||||
if (base.OwnerQuest.QuestPrefab == null)
|
||||
{
|
||||
return "";
|
||||
}
|
||||
return base.OwnerQuest.QuestPrefab.location.Name;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (!base.OwnerQuest.DataVariables.ContainsKey("POIName"))
|
||||
{
|
||||
return "";
|
||||
}
|
||||
return base.OwnerQuest.DataVariables["POIName"];
|
||||
}
|
||||
}
|
||||
return "";
|
||||
}
|
||||
}
|
||||
539
Scripts/Quests/QuestActionSpawnRebirth.cs
Normal file
539
Scripts/Quests/QuestActionSpawnRebirth.cs
Normal file
@@ -0,0 +1,539 @@
|
||||
using Audio;
|
||||
using UnityEngine.Scripting;
|
||||
|
||||
[Preserve]
|
||||
public class QuestActionSpawnRebirth : BaseQuestAction
|
||||
{
|
||||
public override void SetupAction()
|
||||
{
|
||||
}
|
||||
|
||||
public override void PerformAction(Quest ownerQuest)
|
||||
{
|
||||
if (GameUtils.IsPlaytesting())
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
//Log.Out("QuestActionSpawnRebirth-PerformAction START");
|
||||
|
||||
int entityID = ownerQuest.OwnerJournal.OwnerPlayer.entityId;
|
||||
int entityPlayerID = ownerQuest.OwnerJournal.OwnerPlayer.entityId;
|
||||
string strEntity = "";
|
||||
string strDistance = "";
|
||||
string strHeight = "";
|
||||
string strSpawner = "static";
|
||||
string strDirection = "";
|
||||
string strSound = "";
|
||||
float numStartScale = 1;
|
||||
int minion = -1;
|
||||
int numEntities = 1;
|
||||
bool attackPlayer = true;
|
||||
int checkMaxEntities = 0;
|
||||
int minMax = 40;
|
||||
int maxEntities = 20;
|
||||
int repeat = 1;
|
||||
int allNames = 1;
|
||||
bool atPlayerLevel = false;
|
||||
bool randomRotation = true;
|
||||
int numRotation = -1;
|
||||
int isBoss = -1;
|
||||
int handParticle = -1;
|
||||
string lootListName = "";
|
||||
string lootDropClass = "";
|
||||
int lootDropChance = 1;
|
||||
string navIcon = "";
|
||||
string buffList = "";
|
||||
bool setRespawn = false;
|
||||
|
||||
bool canSpawn = false;
|
||||
|
||||
if (this.ID == "DUMMY_FR")
|
||||
{
|
||||
entityID = ownerQuest.OwnerJournal.OwnerPlayer.entityId;
|
||||
entityPlayerID = ownerQuest.OwnerJournal.OwnerPlayer.entityId;
|
||||
strEntity = "";
|
||||
strDistance = "";
|
||||
strHeight = "";
|
||||
strSpawner = "dynamic";
|
||||
strDirection = "";
|
||||
strSound = "";
|
||||
numStartScale = 1;
|
||||
minion = -1;
|
||||
numEntities = 1;
|
||||
attackPlayer = true;
|
||||
checkMaxEntities = 0;
|
||||
minMax = 40;
|
||||
maxEntities = 20;
|
||||
repeat = 1;
|
||||
allNames = 1;
|
||||
atPlayerLevel = false;
|
||||
randomRotation = true;
|
||||
numRotation = -1;
|
||||
isBoss = -1;
|
||||
handParticle = -1;
|
||||
lootListName = "";
|
||||
lootDropClass = "";
|
||||
lootDropChance = 1;
|
||||
navIcon = "";
|
||||
buffList = "";
|
||||
setRespawn = false;
|
||||
}
|
||||
else if (this.ID == "spawn_QuestAmmoMachine")
|
||||
{
|
||||
//Log.Out("QuestActionSpawnRebirth-PerformAction spawn_FuriousRamsay_Kamikaze");
|
||||
|
||||
strEntity = "zombieWightRadiated";
|
||||
isBoss = 1;
|
||||
strDistance = "30";
|
||||
lootDropClass = "FuriousRamsayEventLootContainerAmmoMachine";
|
||||
numStartScale = 1.2f;
|
||||
handParticle = 11;
|
||||
//navIcon = "twitch_vote_boss";
|
||||
navIcon = "";
|
||||
buffList = "FuriousRamsayBossBuffTier1B";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
|
||||
// RESET
|
||||
isBoss = 0;
|
||||
lootDropClass = "";
|
||||
navIcon = "";
|
||||
buffList = "";
|
||||
numStartScale = 1;
|
||||
handParticle = -1;
|
||||
|
||||
strDistance = "25";
|
||||
strEntity = "FuriousRamsayKamikazeTier3";
|
||||
buffList = "FuriousRamsayKamikazeDecayTier3";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
buffList = "FuriousRamsayKamikazeDecayTier4";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
buffList = "FuriousRamsayKamikazeDecayTier5";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
|
||||
buffList = "";
|
||||
|
||||
strEntity = "zombieBikerRadiated";
|
||||
handParticle = 1;
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "zombieSoldierRadiated";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
|
||||
handParticle = -1;
|
||||
strEntity = "FuriousRamsayZombie020_1_1aLeaderTier1";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "FuriousRamsayZombie020_2_1bLeaderTier1";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "FuriousRamsayZombieGiant001";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "FuriousRamsayZombieGiant002";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
}
|
||||
else if (this.ID == "spawn_FuriousRamsay_Kamikaze")
|
||||
{
|
||||
//Log.Out("QuestActionSpawnRebirth-PerformAction spawn_FuriousRamsay_Kamikaze");
|
||||
|
||||
strEntity = "FuriousRamsayKamikazeTier1Quest";
|
||||
repeat = 2;
|
||||
strDistance = "34";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strDistance = "32";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strDistance = "30";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strDistance = "28";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strDistance = "26";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strDistance = "24";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strDistance = "22";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strDistance = "20";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strDistance = "18";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
}
|
||||
else if (this.ID == "spawn_FuriousRamsay_Start")
|
||||
{
|
||||
strDistance = "1";
|
||||
minion = 1;
|
||||
attackPlayer = false;
|
||||
|
||||
string restrictiveHire = RebirthVariables.customRestrictHires;
|
||||
|
||||
if (restrictiveHire != "nofollowers")
|
||||
{
|
||||
allNames = 0;
|
||||
strEntity = "FuriousRamsayNPCShepherd001_FR,FuriousRamsayNPCPitbull001_FR,FuriousRamsayNPCLabrador001_FR,FuriousRamsayNPCHusky001_FR,FuriousRamsayNPCGoldenRetriever001_FR,FuriousRamsayNPCDoberman001_FR,FuriousRamsayNPCDalmatian001_FR,FuriousRamsayNPCBullTerrier001_FR";
|
||||
//strSound = "FuriousRamsayDogSense";
|
||||
strSound = "";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
}
|
||||
|
||||
attackPlayer = true;
|
||||
strSound = "";
|
||||
strDistance = "1";
|
||||
minion = 0;
|
||||
allNames = 1;
|
||||
|
||||
strDistance = "30";
|
||||
strEntity = "zombieBoe";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
|
||||
strEntity = "zombieBoe";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "zombieJoe";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "zombieArlene";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "zombieDarlene";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "zombieMarlene";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "zombieYo";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "zombieSteve";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "zombieBusinessMan";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
|
||||
strDistance = "25";
|
||||
strEntity = "FuriousRamsayWindTornado";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strDistance = "30";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strDistance = "35";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strDistance = "40";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
}
|
||||
else if (this.ID == "spawn_FuriousRamsay_FactionWarWave1_Tier1")
|
||||
{
|
||||
strEntity = "FuriousRamsayBanditCyborg001AxeBossTier1";
|
||||
isBoss = 1;
|
||||
strDistance = "50";
|
||||
lootDropClass = "FuriousRamsayBanditCyborg001AxeBossTier1Loot";
|
||||
//navIcon = "twitch_vote_boss";
|
||||
navIcon = "";
|
||||
buffList = "FuriousRamsayBossBuffTier1BNoSpeed";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
// RESET
|
||||
isBoss = 0;
|
||||
lootDropClass = "";
|
||||
navIcon = "";
|
||||
buffList = "";
|
||||
|
||||
strDistance = "40";
|
||||
strEntity = "FuriousRamsayBanditMan001aBat";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "FuriousRamsayBanditMan001bAxe";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "FuriousRamsayBanditMan002aClub";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "FuriousRamsayBanditMan002bKnife";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "FuriousRamsayBanditMan003aSpear";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "FuriousRamsayBanditMan005aMachete";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "FuriousRamsayBanditMan005dBat";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "FuriousRamsayBanditWoman001dAxe";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "FuriousRamsayBanditWoman001gMachete";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
|
||||
strDistance = "20";
|
||||
strEntity = "zombieBoe";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "zombieJoe";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "zombieArlene";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "zombieDarlene";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "zombieMarlene";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "zombieYo";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "zombieSteve";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "zombieBusinessMan";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "zombieSkateboarder";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "zombieNurse";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
|
||||
attackPlayer = false;
|
||||
strDistance = "10";
|
||||
minion = 0;
|
||||
strSpawner = "dynamic";
|
||||
strEntity = "FuriousRamsaySurvivorMan010bBat";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "FuriousRamsaySurvivorMan002f1Spear";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "FuriousRamsaySurvivorMan002cMachete";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "FuriousRamsaySurvivorMan000eAxe";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
}
|
||||
else if (this.ID == "spawn_FuriousRamsay_Ghosts_Tier1")
|
||||
{
|
||||
Manager.PlayInsidePlayerHead("snakealert");
|
||||
strEntity = "FuriousRamsayCloakedSnakeBoss";
|
||||
strDistance = "25";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
|
||||
strEntity = "FuriousRamsayCloakedSnake";
|
||||
strDistance = "20";
|
||||
repeat = 10;
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
|
||||
attackPlayer = false;
|
||||
strDistance = "15";
|
||||
repeat = 1;
|
||||
minion = 0;
|
||||
strSpawner = "dynamic";
|
||||
strEntity = "FuriousRamsaySurvivorMan010bBat";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "FuriousRamsaySurvivorMan002cMachete";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
/*strEntity = "FuriousRamsaySurvivorMan002f1Spear";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "FuriousRamsaySurvivorMan000eAxe";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);*/
|
||||
}
|
||||
else if (this.ID == "spawn_FuriousRamsay_TheHunt_Tier1")
|
||||
{
|
||||
if (RebirthVariables.customEventsNotification)
|
||||
{
|
||||
Manager.PlayInsidePlayerHead("FuriousRamsayScarecrowAlert");
|
||||
}
|
||||
|
||||
strEntity = "FuriousRamsayWerewolfBossTier1";
|
||||
isBoss = 1;
|
||||
strDistance = "35";
|
||||
numStartScale = 1.2f;
|
||||
lootDropClass = "FuriousRamsayWerewolfBossTier1Loot";
|
||||
navIcon = "";
|
||||
buffList = "FuriousRamsayBossBuffTier1NoSpeed";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
|
||||
// RESET
|
||||
isBoss = 0;
|
||||
lootDropClass = "";
|
||||
navIcon = "";
|
||||
buffList = "";
|
||||
|
||||
strEntity = "FuriousRamsayAnimalWolfMaleForestSmall";
|
||||
strDistance = "25";
|
||||
repeat = 4;
|
||||
allNames = 0;
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
|
||||
repeat = 1;
|
||||
allNames = 1;
|
||||
strDistance = "15";
|
||||
strEntity = "zombieBoe";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "zombieJoe";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "zombieArlene";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "zombieDarlene";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "zombieMarlene";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "zombieYo";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "zombieSteve";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "zombieSkateboarder";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "zombiePartyGirl";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "zombieMoe";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "zombieFemaleFat";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "zombieFatHawaiian";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
}
|
||||
else if (this.ID == "spawn_FuriousRamsay_Hazard_Tier1")
|
||||
{
|
||||
Manager.PlayInsidePlayerHead("malehatesense05");
|
||||
strEntity = "FuriousRamsayPandemicMan002aMacheteBossTier1";
|
||||
isBoss = 1;
|
||||
strDistance = "35";
|
||||
lootDropClass = "FuriousRamsayPandemicMan002aMacheteBossTier1Loot";
|
||||
navIcon = "boss_event";
|
||||
buffList = "FuriousRamsayBossBuffTier1BNoSpeed";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
|
||||
// RESET
|
||||
isBoss = 0;
|
||||
lootDropClass = "";
|
||||
navIcon = "";
|
||||
buffList = "";
|
||||
|
||||
strDistance = "30";
|
||||
repeat = 15;
|
||||
allNames = 0;
|
||||
strEntity = "FuriousRamsayPandemicMan001aBatTier1,FuriousRamsayPandemicMan001aAxeTier1,FuriousRamsayPandemicWoman001aKnifeTier1,FuriousRamsayPandemicWoman001aSpearTier1,FuriousRamsayPandemicMan001aBatTier1,FuriousRamsayPandemicMan001aAxeTier1,FuriousRamsayPandemicWoman001aKnifeTier1,FuriousRamsayPandemicWoman001aSpearTier1,FuriousRamsayPandemicMan001aAxeTier1,FuriousRamsayPandemicWoman001aKnifeTier1,FuriousRamsayPandemicWoman001aSpearTier1,FuriousRamsayPandemicMan001aBatTier1,FuriousRamsayPandemicMan001aAxeTier1,FuriousRamsayPandemicWoman001aKnifeTier1,FuriousRamsayPandemicWoman001aSpearTier1";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
}
|
||||
else if (this.ID == "spawn_FuriousRamsay_ToxicTier1")
|
||||
{
|
||||
strEntity = "zombieYo,zombieTomClark,zombieArlene,zombieDarlene,zombieMarlene,zombieNurse,zombiePartyGirl,zombieSteve,zombieJoe,zombieLab,zombieBusinessMan,zombieBurnt,zombieMaleHazmat,zombieUtilityWorker,zombieSpider,zombieBoe,zombieJanitor,zombieSkateboarder,zombieMoe,zombieFatHawaiian,zombieFemaleFat";
|
||||
isBoss = 1;
|
||||
strDistance = "40";
|
||||
lootDropClass = "FuriousRamsayToxicBossLoot";
|
||||
navIcon = "FuriousRamsayNavToxicBoss";
|
||||
buffList = "FuriousRamsayBossBuffTier1B";
|
||||
handParticle = 5;
|
||||
numStartScale = 1.5f;
|
||||
allNames = 0;
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
|
||||
// RESET
|
||||
isBoss = 0;
|
||||
lootDropClass = "";
|
||||
navIcon = "";
|
||||
numStartScale = 1f;
|
||||
|
||||
strDistance = "30";
|
||||
repeat = 20;
|
||||
allNames = 0;
|
||||
buffList = "FuriousRamsayMinionBuffTier1";
|
||||
strEntity = "zombieYo,zombieTomClark,zombieArlene,zombieDarlene,zombieMarlene,zombieNurse,zombiePartyGirl,zombieSteve,zombieJoe,zombieLab,zombieBusinessMan,zombieBurnt,zombieMaleHazmat,zombieUtilityWorker,zombieSpider,zombieBoe,zombieJanitor,zombieSkateboarder,zombieMoe,zombieFatHawaiian,zombieFemaleFat";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
|
||||
}
|
||||
else if (this.ID == "spawn_FuriousRamsay_MiniHordeBossTier1")
|
||||
{
|
||||
Manager.PlayInsidePlayerHead("zombiefemalescoutalert");
|
||||
strEntity = "zombieBiker";
|
||||
isBoss = 1;
|
||||
strDistance = "30";
|
||||
handParticle = 1;
|
||||
numStartScale = 1.5f;
|
||||
lootDropClass = "FuriousRamsayMiniHordeBossTier1Loot";
|
||||
navIcon = "FuriousRamsayNavMiniHordeBoss";
|
||||
buffList = "FuriousRamsayBossBuffTier1B";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
|
||||
// RESET
|
||||
isBoss = 0;
|
||||
lootDropClass = "";
|
||||
handParticle = -1;
|
||||
navIcon = "";
|
||||
numStartScale = 1f;
|
||||
|
||||
strDistance = "20";
|
||||
repeat = 20;
|
||||
allNames = 0;
|
||||
strEntity = "zombieSoldierFeral";
|
||||
buffList = "FuriousRamsayMinionBuffTier1";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
}
|
||||
else if (this.ID == "spawn_FuriousRamsay_NanosEnd_Tier1")
|
||||
{
|
||||
strEntity = "NanoCyborg005_Event_FR";
|
||||
isBoss = 1;
|
||||
strDistance = "20";
|
||||
numStartScale = 1.5f;
|
||||
lootDropClass = "FuriousRamsayQuestLootNanoTier1";
|
||||
navIcon = "FuriousRamsayNavNanoCyborg005_FR";
|
||||
buffList = "FuriousRamsayBossBuffTier1BNoSpeed";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
}
|
||||
else if (this.ID == "spawn_QuestStarterDecoysWave1")
|
||||
{
|
||||
attackPlayer = false;
|
||||
strDistance = "20";
|
||||
handParticle = 1;
|
||||
buffList = "";
|
||||
strEntity = "zombieBoe";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "zombieJoe";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
}
|
||||
else if (this.ID == "spawn_QuestStarterDecoysWave2")
|
||||
{
|
||||
attackPlayer = false;
|
||||
strDistance = "20";
|
||||
handParticle = 1;
|
||||
buffList = "";
|
||||
strEntity = "zombieJanitor";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "zombieArlene";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "zombieLab";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "zombieDarlene";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
}
|
||||
else if (this.ID == "spawn_QuestStarterDecoysWave3")
|
||||
{
|
||||
attackPlayer = false;
|
||||
strDistance = "20";
|
||||
handParticle = 1;
|
||||
buffList = "";
|
||||
strEntity = "zombieLab";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "zombieDarlene";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "zombieMarlene";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "zombieYo";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "zombieSteve";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "zombieBusinessMan";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
}
|
||||
else if (this.ID == "spawn_QuestStarterDecoysEnd")
|
||||
{
|
||||
attackPlayer = false;
|
||||
strDistance = "20";
|
||||
handParticle = 1;
|
||||
buffList = "";
|
||||
strEntity = "zombieBoe";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "zombieJoe";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "zombieJanitor";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "zombieArlene";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "zombieLab";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "zombieDarlene";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "zombieMarlene";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "zombieYo";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "zombieSteve";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
strEntity = "zombieBusinessMan";
|
||||
RebirthUtilities.SpawnEntity(entityID, strEntity, numEntities, "", "", strDistance, strSpawner, strHeight, strDirection, numStartScale, numRotation, randomRotation, atPlayerLevel, attackPlayer, entityPlayerID, minion, strSound, maxEntities, checkMaxEntities, minMax, repeat, allNames, isBoss, handParticle, lootListName, lootDropClass, lootDropChance, navIcon, buffList);
|
||||
}
|
||||
}
|
||||
|
||||
public override BaseQuestAction Clone()
|
||||
{
|
||||
QuestActionSpawnRebirth QuestActionSpawnRebirth = new QuestActionSpawnRebirth();
|
||||
base.CopyValues(QuestActionSpawnRebirth);
|
||||
return QuestActionSpawnRebirth;
|
||||
}
|
||||
|
||||
public override void ParseProperties(DynamicProperties properties)
|
||||
{
|
||||
base.ParseProperties(properties);
|
||||
//properties.ParseString(QuestActionSpawnRebirth.PropSpawnAction, ref this.ID);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user