Beispiel #1
0
    void OnSceneGUI()
    {
        GatheringComponent gc = (GatheringComponent)target;

        Handles.color = Color.white;
        Handles.DrawWireArc(gc.transform.position, Vector3.up, Vector3.forward, 360, gc.viewRadius);
        Vector3 viewAngleA = gc.DirFromAngle(-gc.viewAngle / 2, false);
        Vector3 viewAngleB = gc.DirFromAngle(gc.viewAngle / 2, false);

        Handles.DrawLine(gc.transform.position, gc.transform.position + viewAngleA * gc.viewRadius);
        Handles.DrawLine(gc.transform.position, gc.transform.position + viewAngleB * gc.viewRadius);

        Handles.color = Color.red;
        foreach (CollectibleComponent c in gc.nearbyCollectibles)
        {
            Handles.DrawLine(gc.transform.position, c.transform.position);
        }
    }
Beispiel #2
0
    public void Initialize()
    {
        if (!initialized)
        {
            return;
        }

        Transform[] worldObjects = GetComponentsInChildren <Transform>();

        inputSystem.Initialize(worldObjects);

        InputComponent       inpC       = playerObject.GetComponent <InputComponent>();
        HealthComponent      healthC    = playerObject.GetComponent <HealthComponent>();
        InteractorComponent  intC       = playerObject.GetComponent <InteractorComponent>();
        MovementComponent    moveC      = playerObject.GetComponent <MovementComponent>();
        InventoryComponent   invC       = playerObject.GetComponent <InventoryComponent>();
        GameManagerComponent gmC        = playerObject.GetComponent <GameManagerComponent>();
        AnimationComponent   animC      = playerObject.GetComponent <AnimationComponent>();
        PlayerStoryComponent storyBeatC = playerObject.GetComponent <PlayerStoryComponent>();
        PlayerEventComponent eventC     = playerObject.GetComponent <PlayerEventComponent>();
        GatheringComponent   gatC       = playerObject.GetComponent <GatheringComponent>();
        UIComponent          uiC        = playerObject.GetComponent <UIComponent>();
        NavMeshComponent     nmC        = playerObject.GetComponent <NavMeshComponent>();
        LightComponent       lC         = playerObject.GetComponent <LightComponent>();
        VFXComponent         vfxC       = playerObject.GetComponent <VFXComponent>();
        CombatComponent      cC         = playerObject.GetComponent <CombatComponent>();
        AudioComponent       aC         = playerObject.GetComponent <AudioComponent>();
        ConditionsComponent  conC       = playerObject.GetComponent <ConditionsComponent>();

        PlayerFilter pf = new PlayerFilter(
            playerObject, inpC, healthC, intC,
            moveC, invC, gmC, animC, storyBeatC,
            eventC, gatC, uiC, nmC, lC, vfxC,
            cC, aC, conC);

        sbs = GetComponent <StoryBeatSystem>();

        for (int i = 0; i < systems.Length; i++)
        {
            systems[i].player = pf;
            systems[i].Initialize(worldObjects);
            systems[i].SetupInputComponent(inputSystem.inputComponent);
        }
    }
Beispiel #3
0
/*
 *  public void UpdateCurrentResourcesTexts()
 *  {
 *      GatheringComponent gc = player.GetComponent<GatheringComponent>();
 *      //mushroomTXT.text = .ToString();
 *      //flowerTXT.text = gc.flowerAmount.ToString();
 *      //cart.GetComponent<InventoryComponent>().InventoryBag.
 *  }
 */
    public bool CraftPotion(CollectibleComponent finalQuestPotion, int amount)
    {
        GatheringComponent gc = player.GetComponent <GatheringComponent>();

        for (int i = 0; i < cart.GetComponent <InventoryComponent>().InventoryBag.Count; i++)
        {
            if (cart.GetComponent <InventoryComponent>().InventoryBag[i].itemType == finalQuestPotion) //player = cart
            {
                //Do stuff with quest = complete?
                if (cart.GetComponent <InventoryComponent>().RemoveItemFromInventory(finalQuestPotion, amount))
                {
                    //you turned in the quest!
                    gc.hasPurificationPotion = true;//ful bool, obselete, enbart för testing
                }
                else
                {
                    //You did't manage to complete the quest!
                }
            }
        }
        return(false);
    }
Beispiel #4
0
 public PlayerFilter(
     GameObject go,
     InputComponent inputC,
     HealthComponent healthC,
     InteractorComponent interactC,
     MovementComponent moveC,
     InventoryComponent inventoryC,
     GameManagerComponent gmc,
     AnimationComponent animC,
     PlayerStoryComponent psC,
     PlayerEventComponent peC,
     GatheringComponent gC,
     UIComponent uiC,
     NavMeshComponent nmC,
     LightComponent lC,
     VFXComponent vfxC,
     CombatComponent cC,
     AudioComponent aC,
     ConditionsComponent conC)
 {
     this.go              = go;
     inputComponent       = inputC;
     healthComponent      = healthC;
     interactorComponent  = interactC;
     movementComponent    = moveC;
     inventoryComponent   = inventoryC;
     gameManagerComponent = gmc;
     animationComponent   = animC;
     playerStoryComponent = psC;
     eventComponent       = peC;
     gatheringComponent   = gC;
     uiComponent          = uiC;
     navMeshComponent     = nmC;
     lightComponent       = lC;
     vfxComponent         = vfxC;
     combatComponent      = cC;
     audioComponent       = aC;
     conditionsComponent  = conC;
 }