Exemple #1
0
    public static void OnComplete(GameObject obj)
    {
        SceneItemAgent agent  = obj.GetComponent <SceneItemAgent>();
        CFX_AutoRotate rotate = obj.GetComponent <CFX_AutoRotate>();

        GameObject.Destroy(rotate);

        obj.transform.rotation = Quaternion.Euler(0, obj.transform.eulerAngles.y, 0);
        if (agent != null)
        {
            agent.OnStart();
            //agent.SetAsDrop();
            if (agent.ItemInfo != null && agent.ItemInfo.IsFlag())
            {
                agent.SetAutoDestroy(3.0f);//镖物归位
            }
        }
        else
        {
            PickupItemAgent a = obj.GetComponent <PickupItemAgent>();
            if (a != null)
            {
                a.OnStart();
            }
        }
    }
Exemple #2
0
 public void OnDestroyPickupItem(PickupItemAgent item)
 {
     if (!PickupItems.Contains(item))
     {
         return;
     }
     PickupItems.Remove(item);
 }
Exemple #3
0
 public void OnGeneratePickupItem(PickupItemAgent item)
 {
     if (PickupItems.Contains(item))
     {
         return;
     }
     PickupItems.Add(item);
     item.InstanceId = PickupItemInstanceIdx++;
 }
    GameObject CreateTriggerObj(string des, Transform pos, Vector3 forward)
    {
        GameObject obj = new GameObject(des);

        obj.transform.position   = Vector3.zero;
        obj.transform.rotation   = Quaternion.identity;
        obj.transform.localScale = Vector3.one;
        obj.transform.SetParent(Loader.Instance == null ? null : Loader.Instance.transform);
        obj.transform.position = pos.position + Vector3.up * 50 + forward * 35;
        PickupItemAgent agent = obj.AddComponent <PickupItemAgent>();

        agent.SetPickupItem(des);
        return(obj);
    }
Exemple #5
0
    void OnItemPickuped(GetItemMsg item)
    {
        MeteorUnit unit = U3D.GetUnit((int)item.playerId);

        if (item.type == (int)GetItemType.SceneItem)
        {
            SceneItemAgent sceneItem = U3D.GetSceneItem((int)item.instance);
            if (sceneItem != null)
            {
                sceneItem.OnNetPickuped(unit);
            }
        }
        else if (item.type == (int)GetItemType.PickupItem)
        {
            PickupItemAgent pickup = U3D.GetPickupItem((int)item.instance);
            if (pickup != null)
            {
                pickup.OnNetPickup(unit);
            }
        }
    }