Example #1
0
    public static Vector3 GetElementWorldPos(StageData.StageElement ele, float x, float z)
    {
        Vector3 vNew    = new Vector3(x, 0, z);
        Vector3 vOffset = GetElementOffset(ele);

        return(vNew + vOffset);
    }
Example #2
0
    public static UnityEngine.Object GetElementAsset(StageData.StageElement ele)
    {
        string path = element_asset_path[GetPaintTypeIndex(ele)];

        if (path == null || path.Length == 0)
        {
            return(null);
        }
        return(GameUtils.LoadResource(path));
    }
Example #3
0
    public static Vector3 GetElementOffset(StageData.StageElement ele)
    {
        int index = GetPaintTypeIndex(ele);

        if (index >= 0 && index < element_asset_pos_offset.Length)
        {
            return(element_asset_pos_offset[index]);
        }
        return(Vector3.zero);
    }
Example #4
0
    public static int GetPaintTypeIndex(StageData.StageElement ele)
    {
        for (int i = 0; i < ELEMENT_TYPE_ENUMS.Length; i++)
        {
            if (ELEMENT_TYPE_ENUMS[i] == ele)
            {
                return(i);
            }
        }

        return(-1);
    }
Example #5
0
    void CreateStageElement(StageData.StageElement ele, int x, int z, List <GameObject> list)
    {
        if (ele == StageData.StageElement.None)
        {
            return;
        }
        GameObject stageRoot = GameObject.Find("World/Stage");

        if (stageRoot == null)
        {
            return;
        }
        if (_resources[StageUtil.GetPaintTypeIndex(ele)] == null)
        {
            return;
        }
        GameObject newObj = GameObject.Instantiate(_resources[StageUtil.GetPaintTypeIndex(ele)]) as GameObject;

        newObj.transform.position = StageUtil.GetElementWorldPos(ele, x, z);
        newObj.transform.SetParent(stageRoot.transform);
        list.Add(newObj);
    }