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); } }
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); } }
/* * 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); }
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; }