public static WorldInteractionEvent_PickupWeaponRuntime DropWeaponToGround(WeaponItemRuntime weaponToDrop, Transform worldInteractionParent, GameObject worldInteractionPrefab)
        {
            GameObject createdWorldInteraction = Object.Instantiate(worldInteractionPrefab, worldInteractionParent);

            createdWorldInteraction.transform.position = weaponToDrop.transform.position;
            WorldInteractionsManager.singleton.AddNewInteraction(createdWorldInteraction.GetComponent <WorldInteractionController>());

            WorldInteractionEvent_PickupWeaponRuntime pickupWeaponRuntime = createdWorldInteraction.GetComponent <WorldInteractionEvent_PickupWeaponRuntime>();

            pickupWeaponRuntime.runtimeWeapon  = weaponToDrop;
            pickupWeaponRuntime.weaponToPickup = weaponToDrop.weaponItemData;
            pickupWeaponRuntime.SetupInteractionSubSystems();



            weaponToDrop.transform.SetParent(createdWorldInteraction.transform);

            return(pickupWeaponRuntime);
        }
Esempio n. 2
0
 private void Setup()
 {
     collisionCollider           = GetComponent <Collider>();
     weaponRuntime               = GetComponentInParent <WeaponItemRuntime>();
     collisionCollider.isTrigger = true;
 }