public static string GetSecondOperator(MutationEffectType effectType) { switch (effectType) { case MutationEffectType.AssignAdd: return("+"); case MutationEffectType.AssignSubtract: return("-"); case MutationEffectType.AssignMultiply: case MutationEffectType.AddMultiply: case MutationEffectType.SubtractMultiply: return("*"); case MutationEffectType.AssignDivide: case MutationEffectType.AddDivide: case MutationEffectType.SubtractDivide: return("/"); case MutationEffectType.AtLeastAdd: return(", add"); case MutationEffectType.AtMostSubtract: return(", sub"); } return(null); }
private static string GetFirstOperator(MutationEffectType effectType) { switch (effectType) { case MutationEffectType.Assign: case MutationEffectType.AssignAdd: case MutationEffectType.AssignSubtract: case MutationEffectType.AssignMultiply: case MutationEffectType.AssignDivide: return("="); case MutationEffectType.Add: case MutationEffectType.AddMultiply: case MutationEffectType.AddDivide: return("+="); case MutationEffectType.Subtract: case MutationEffectType.SubtractMultiply: case MutationEffectType.SubtractDivide: return("-="); case MutationEffectType.Multiply: return("*="); case MutationEffectType.Divide: return("/="); case MutationEffectType.AtLeastAdd: return(">="); case MutationEffectType.AtMostSubtract: return("<="); } return(null); }
public static bool HasSecondOperator(MutationEffectType effectType) { switch (effectType) { case MutationEffectType.AssignAdd: case MutationEffectType.AssignSubtract: case MutationEffectType.AssignMultiply: case MutationEffectType.AssignDivide: case MutationEffectType.AddMultiply: case MutationEffectType.AddDivide: case MutationEffectType.SubtractMultiply: case MutationEffectType.SubtractDivide: case MutationEffectType.AtLeastAdd: case MutationEffectType.AtMostSubtract: return(true); } return(false); }
public bool Validate(WorldObject wo, EffectArgument result, EffectArgument arg1, EffectArgument arg2, MutationEffectType type) { /*if (!result.IsValid) * { * log.Error($"{wo.Name} ({wo.Guid}).TryMutate({type}) - result invalid"); * return false; * }*/ if (!arg1.IsValid) { log.Error($"{wo.Name} ({wo.Guid}).TryMutate({type}) - argument 1 invalid"); return(false); } switch (type) { case MutationEffectType.AtLeastAdd: case MutationEffectType.AtMostSubtract: case MutationEffectType.AddMultiply: case MutationEffectType.AddDivide: case MutationEffectType.SubtractMultiply: case MutationEffectType.SubtractDivide: case MutationEffectType.AssignAdd: case MutationEffectType.AssignSubtract: case MutationEffectType.AssignMultiply: case MutationEffectType.AssignDivide: if (!arg2.IsValid) { log.Error($"{wo.Name} ({wo.Guid}).TryMutate({type}) - argument 2 invalid"); return(false); } break; } return(true); }