Upload from upload_mods.ps1
This commit is contained in:
161
Scripts/Requirements/RequirementIsBetweenTimesRebirth.cs
Normal file
161
Scripts/Requirements/RequirementIsBetweenTimesRebirth.cs
Normal file
@@ -0,0 +1,161 @@
|
||||
using System.Xml.Linq;
|
||||
|
||||
public class RequirementIsBetweenTimesRebirth : TargetedCompareRequirementBase
|
||||
{
|
||||
string strValue = "";
|
||||
|
||||
public override bool IsValid(MinEventParams _params)
|
||||
{
|
||||
|
||||
if (!base.IsValid(_params))
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
ulong worldTime = GameManager.Instance.World.worldTime;
|
||||
ValueTuple<int, int, int> valueTuple = GameUtils.WorldTimeToElements(worldTime);
|
||||
|
||||
int hour = valueTuple.Item2;
|
||||
int minutes = valueTuple.Item3;
|
||||
|
||||
//Log.Out("RequirementIsBetweenTimesRebirth-IsValid, hour: " + hour);
|
||||
//Log.Out("RequirementIsBetweenTimesRebirth-IsValid, minutes: " + minutes);
|
||||
|
||||
string[] array = strValue.Split(new char[]
|
||||
{
|
||||
','
|
||||
});
|
||||
|
||||
int numHour1 = 0;
|
||||
int numMinutes1 = 0;
|
||||
int numHour2 = 0;
|
||||
int numMinutes2 = 0;
|
||||
|
||||
bool bOutside = false;
|
||||
|
||||
for (int i = 0; i < array.Length; i++)
|
||||
{
|
||||
if (i == 0)
|
||||
{
|
||||
numHour1 = Int16.Parse(array[0]);
|
||||
}
|
||||
if (i == 1)
|
||||
{
|
||||
numMinutes1 = Int16.Parse(array[1]);
|
||||
}
|
||||
if (i == 2)
|
||||
{
|
||||
numHour2 = Int16.Parse(array[2]);
|
||||
}
|
||||
if (i == 3)
|
||||
{
|
||||
numMinutes2 = Int16.Parse(array[3]);
|
||||
}
|
||||
}
|
||||
|
||||
//Log.Out("RequirementIsBetweenTimesRebirth-IsValid, numHour1: " + numHour1);
|
||||
//Log.Out("RequirementIsBetweenTimesRebirth-IsValid, numMinutes1: " + numMinutes1);
|
||||
//Log.Out("RequirementIsBetweenTimesRebirth-IsValid, numHour2: " + numHour2);
|
||||
//Log.Out("RequirementIsBetweenTimesRebirth-IsValid, numMinutes2: " + numMinutes2);
|
||||
|
||||
if (numHour1 > numHour2)
|
||||
{
|
||||
//Log.Out("RequirementIsBetweenTimesRebirth-IsValid, numHour2 > numHour1");
|
||||
bOutside = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
if ((numHour1 == numHour2))
|
||||
{
|
||||
if (numMinutes1 > numMinutes2)
|
||||
{
|
||||
//Log.Out("RequirementIsBetweenTimesRebirth-IsValid, numMinutes1 > numMinutes2");
|
||||
bOutside = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
bool flag = false;
|
||||
|
||||
if (!bOutside)
|
||||
{
|
||||
//Log.Out("RequirementIsBetweenTimesRebirth-IsValid, NOT bOutside");
|
||||
if (numHour1 < hour && hour < numHour2)
|
||||
{
|
||||
//Log.Out("RequirementIsBetweenTimesRebirth-IsValid, hour > numHour1 && hour < numHour2");
|
||||
flag = true;
|
||||
}
|
||||
else if (hour == numHour1 && hour == numHour2)
|
||||
{
|
||||
//Log.Out("RequirementIsBetweenTimesRebirth-IsValid, hour == numHour1 && hour == numHour2");
|
||||
if (minutes >= numMinutes1 && minutes <= numMinutes2)
|
||||
{
|
||||
//Log.Out("RequirementIsBetweenTimesRebirth-IsValid, minutes >= numMinutes1 && minutes <= numMinutes2");
|
||||
flag = true;
|
||||
}
|
||||
}
|
||||
else if (hour == numHour1 && minutes >= numMinutes1)
|
||||
{
|
||||
//Log.Out("RequirementIsBetweenTimesRebirth-IsValid, hour == numHour1 && minutes >= numMinutes1");
|
||||
flag = true;
|
||||
}
|
||||
else if (hour == numHour2 && minutes <= numMinutes2)
|
||||
{
|
||||
//Log.Out("RequirementIsBetweenTimesRebirth-IsValid, hour == numHour2 && minutes <= numMinutes2");
|
||||
flag = true;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
//Log.Out("RequirementIsBetweenTimesRebirth-IsValid, bOutside");
|
||||
if (hour > numHour1 || hour < numHour2)
|
||||
{
|
||||
//Log.Out("RequirementIsBetweenTimesRebirth-IsValid, hour < numHour1 || hour > numHour2");
|
||||
flag = true;
|
||||
}
|
||||
else if (hour == numHour1 && hour == numHour2)
|
||||
{
|
||||
//Log.Out("RequirementIsBetweenTimesRebirth-IsValid, hour == numHour1 && hour == numHour2");
|
||||
if (minutes <= numMinutes2 || minutes >= numMinutes1)
|
||||
{
|
||||
//Log.Out("RequirementIsBetweenTimesRebirth-IsValid, minutes <= numMinutes2 || minutes >= numMinutes1");
|
||||
flag = true;
|
||||
}
|
||||
}
|
||||
else if (hour == numHour1 && minutes >= numMinutes1)
|
||||
{
|
||||
//Log.Out("RequirementIsBetweenTimesRebirth-IsValid, hour == numHour1 && minutes >= numMinutes1");
|
||||
flag = true;
|
||||
}
|
||||
else if (hour == numHour2 && minutes <= numMinutes2)
|
||||
{
|
||||
//Log.Out("RequirementIsBetweenTimesRebirth-IsValid, hour == numHour2 && minutes <= numMinutes2");
|
||||
flag = true;
|
||||
}
|
||||
}
|
||||
|
||||
//Log.Out("RequirementIsBetweenTimesRebirth-IsValid, flag: " + flag);
|
||||
return flag;
|
||||
}
|
||||
|
||||
public override bool ParseXAttribute(XAttribute _attribute)
|
||||
{
|
||||
var flag = base.ParseXAttribute(_attribute);
|
||||
if (flag) return true;
|
||||
var name = _attribute.Name;
|
||||
|
||||
if (name == null)
|
||||
{
|
||||
return flag;
|
||||
}
|
||||
else if (name == "Value")
|
||||
{
|
||||
strValue = _attribute.Value;
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user