plantilla base para movimiento básico
This commit is contained in:
Robii Aragon
2026-02-05 05:07:55 -08:00
parent 195b696771
commit 779f2c8b20
14443 changed files with 23840465 additions and 452 deletions

View File

@@ -0,0 +1,110 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Events;
public class grabbedObjectState : MonoBehaviour
{
[Header ("Main Settings")]
[Space]
public bool removeComponentOnDropObject = true;
[Space]
[Header ("Debug")]
[Space]
public bool insideZeroGravityRoom;
public bool grabbed;
public bool carryingObjectPhysically;
public GameObject currentHolder;
[Space]
[Header ("Event Settings")]
[Space]
public bool useEventsOnGrabbedState;
public UnityEvent eventOnGrabObject;
public UnityEvent eventOnDropObject;
[Space]
[Header ("Components")]
[Space]
public zeroGravityRoomSystem currentZeroGravityRoom;
public void setGrabbedState (bool state)
{
grabbed = state;
if (useEventsOnGrabbedState) {
if (grabbed) {
eventOnGrabObject.Invoke ();
} else {
eventOnDropObject.Invoke ();
}
}
}
public bool isGrabbed ()
{
return grabbed;
}
public void setCurrentHolder (GameObject current)
{
currentHolder = current;
}
public GameObject getCurrentHolder ()
{
return currentHolder;
}
public void setInsideZeroGravityRoomState (bool state)
{
insideZeroGravityRoom = state;
}
public bool isInsideZeroGravityRoom ()
{
return insideZeroGravityRoom;
}
public void setCurrentZeroGravityRoom (zeroGravityRoomSystem gravityRoom)
{
currentZeroGravityRoom = gravityRoom;
}
public zeroGravityRoomSystem getCurrentZeroGravityRoom ()
{
return currentZeroGravityRoom;
}
public void checkGravityRoomState ()
{
if (insideZeroGravityRoom) {
currentZeroGravityRoom.setObjectInsideState (gameObject);
}
}
public void setCarryingObjectPhysicallyState (bool state)
{
carryingObjectPhysically = state;
}
public bool isCarryingObjectPhysically ()
{
return carryingObjectPhysically;
}
public void removeGrabbedObjectComponent ()
{
if (removeComponentOnDropObject) {
Destroy (this);
}
}
}