Start of Caste System

This commit is contained in:
Vegapnk 2023-04-19 08:09:33 +02:00
parent 6777861903
commit 8d541c78c9
5 changed files with 207 additions and 2 deletions

View file

@ -0,0 +1,26 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using RimWorld;
using Verse;
namespace RJW_Genes
{
/// <summary>
/// Checks if there are multiple queens on the map.
/// </summary>
public class ConditionalStatAffecter_MultipleQueens : ConditionalStatAffecter
{
public override string Label => (string)"StatsReport_MultipleQueens".Translate();
public override bool Applies(StatRequest req)
{
// => ModsConfig.BiotechActive && req.HasThing && req.Thing.Spawned && req.Thing.Position.InSunlight(req.Thing.Map);
throw new NotImplementedException();
}
}
}

View file

@ -0,0 +1,26 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using RimWorld;
using Verse;
namespace RJW_Genes
{
/// <summary>
/// Checks if there is no queen on the map.
/// </summary>
public class ConditionalStatAffecter_QueenAbsent : ConditionalStatAffecter
{
public override string Label => (string)"StatsReport_QueenAbsent".Translate();
public override bool Applies(StatRequest req)
{
//ModsConfig.BiotechActive && req.HasThing && req.Thing.Spawned && req.Thing.Position.InSunlight(req.Thing.Map);
throw new NotImplementedException();
}
}
}

View file

@ -0,0 +1,28 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using RimWorld;
using Verse;
namespace RJW_Genes
{
/// <summary>
/// Checks if there is (exactly) one queen nearby.
/// If the pawn is a queen itself, it's checked if there are OTHER queens nearby.
/// While this is used for mostly positive things for workers and drones, for queens it checks if there is a rival nearby.
/// </summary>
public class ConditionalStatAffecter_QueenCloseBy : ConditionalStatAffecter
{
public override string Label => (string)"StatsReport_QueenCloseBy".Translate();
public override bool Applies(StatRequest req)
{
// => ModsConfig.BiotechActive && req.HasThing && req.Thing.Spawned && req.Thing.Position.InSunlight(req.Thing.Map);
throw new NotImplementedException();
}
}
}