コード例 #1
0
ファイル: _StructureHit3.cs プロジェクト: abarabone/a
    public virtual void init(StructureNearObjectBuilder builder)
    {
        base.init();


        breakManager.init(builder, structure);
    }
コード例 #2
0
    // 初期化・更新 ----------------------------

    public override void init(StructureNearObjectBuilder builder)
    {
        base.init(builder);


        durability = (float)structure.parts.Length * 0.5f;
    }
コード例 #3
0
    public override StructureNearObjectBuilder build(Transform tfStructureRoot)
    {
        if (templateNearBuilder == null)
        {        // Debug.Log( tfStructureRoot.name+" build" );
            templateNearBuilder = base.build(tfStructureRoot);
        }
        else
        {        // Debug.Log(tfStructureRoot.name+" duplicate");
            templateNearBuilder.duplicateNear(tfStructureRoot);
        }

        return(templateNearBuilder);
    }
コード例 #4
0
    public override StructureNearObjectBuilder build(Transform tfStructureRoot)
    {
        var holderObject = getContentsObject();


        var nearBuilder = new StructureNearObjectBuilder();

        nearBuilder.build(holderObject, GM.shaders, tfStructureRoot);


        flatParentingAllParts(nearBuilder.parts);


        return(nearBuilder);
    }
コード例 #5
0
ファイル: _StructureHit3.cs プロジェクト: abarabone/a
        // 初期化・更新 ----------------------------

        public void init(StructureNearObjectBuilder builder, _Structure3 structure)
        {
            breakers = new StructureMeshBreakController3[(int)_StructurePart3.enType.length];

            brokenFlags.init(builder.parts.Length);


            var cs = builder.near.GetComponentsInChildren <MeshCollider>(true);

            foreach (var c in cs)
            {
                var i = getBrekerIndex(c);

                var breaker = new StructureMeshBreakController3(structure);

                breaker.init(c, builder.meshBuilder.hits[(int)i].triIndexToPartIdList, i);

                breakers[(int)i] = breaker;
            }
        }