Example #1
0
 public static ConsoleCommandGroup AddUnitFlag(this ConsoleCommandGroup group,
                                               string name, Getter <bool> getFunc, Setter <bool> setAction)
 {
     group.AddUnit(name, delegate(string[] args) {
         var noArguments = args.Length == 0;
         if (noArguments)
         {
             var stateString = getFunc()
                 ? "<color=#00ff00ff>on</color>"
                 : "<color=#ff0000ff>off</color>";
             NoBrain.Log($"{name} is turned {stateString}!");
         }
         else
         {
             var parseSuccess = !bool.TryParse(args[0], out var parsedValue);
             if (parseSuccess)
             {
                 NoBrain.Log($"This argument only supports \"true\" or \"false\" as values. (Given: {args[0]})");
             }
             else
             {
                 setAction(parsedValue);
                 var stateString = parsedValue
                     ? "<color=#00ff00ff>enabled</color>"
                     : "<color=#ff0000ff>disabled</color>";
                 NoBrain.Log($"{name} has been {stateString}!");
             }
         }
     });
     return(group);
 }
Example #2
0
    private void withItem(DefaultLabelController labelController, UseLabelAndItem action)
    {
        var shopItemController = labelController.targetObject.gameObject.GetComponent <ShopItemController>();

        if (shopItemController == null)
        {
//            NoBrain.LogFine("Not containing ShopItemController " + labelController.label.Text);
            return;
        }

        var encounterTrackable = shopItemController.item.GetComponent <EncounterTrackable>();

        if (encounterTrackable == null)
        {
//            NoBrain.LogFine("Not containing EncounterTrackable " + labelController.label.Text);
            return;
        }

        var item = shopItemController.item;

        if (item is ItemBlueprintItem)
        {
            var newItem = PickupObjectDatabase.GetByEncounterName(
                encounterTrackable.journalData.GetPrimaryDisplayName());
            if (newItem != null)
            {
                item = newItem;
            }
            else
            {
                NoBrain.Log("Couldn't find the real item behind the ItemBlueprintItem.");
            }
        }

        action.Invoke(labelController, encounterTrackable, item);
    }
Example #3
0
 private void Start()
 {
     NoBrain.LogFine("Start of NoBrainBehaviour");
 }