コード例 #1
0
    public void JsonParse()
    {
        jsonStr =
            "{\"sides\":{\"0\":{\"id\":0,\"fleets\":{\"0\":{\"ships\":{\"0\":{\"shipId\":1,\"name\":\"\u0422\u044F\u0436\u0435\u043B\u044B\u0439 \u0438\u0441\u0442\u0440\u0435\u0431\u0438\u0442\u0435\u043B\u044C\",\"quantity\":100,\"armor\":\"100\",\"baseDamage\":10,\"damage\":{\"armor\":{\"lightArmor\":1,\"mediumArmor\":1,\"heavyArmor\":0.5,\"reinforcedArmor\":0.3},\"hull\":{\"small\":1,\"medium\":1,\"large\":0.5,\"huge\":0.3}},\"armorType\":\"Light\",\"hullSize\":\"Small\"},\"1\":{\"shipId\":2,\"name\":\"\u041C\u0430\u043B\u044B\u0439 \u0442\u0440\u0430\u043D\u0441\u043F\u043E\u0440\u0442\",\"quantity\":100,\"armor\":\"10\",\"baseDamage\":1,\"damage\":{\"armor\":{\"lightArmor\":1,\"mediumArmor\":1,\"heavyArmor\":0.5,\"reinforcedArmor\":0.3},\"hull\":{\"small\":1,\"medium\":1,\"large\":0.5,\"huge\":0.3}},\"armorType\":\"Light\",\"hullSize\":\"Small\"}},\"id\":123,\"is_garrison\":null,\"name\":\"enemy fleet name 1\",\"belongsTo\":2,\"captain\":null,\"metal\":5000,\"crystal\":3200,\"gas\":12232},\"1\":{\"id\":124,\"ships\":{\"0\":{\"shipId\":2,\"name\":\"\u041C\u0430\u043B\u044B\u0439 \u0442\u0440\u0430\u043D\u0441\u043F\u043E\u0440\u0442\",\"quantity\":50,\"armor\":\"10\",\"baseDamage\":1,\"damage\":{\"armor\":{\"lightArmor\":1,\"mediumArmor\":1,\"heavyArmor\":0.5,\"reinforcedArmor\":0.3},\"hull\":{\"small\":1,\"medium\":1,\"large\":0.5,\"huge\":0.3}},\"armorType\":\"Light\",\"hullSize\":\"Small\"},\"2\":{\"shipId\":3,\"name\":\"\u0411\u043E\u043B\u044C\u0448\u043E\u0439 \u0442\u0440\u0430\u043D\u0441\u043F\u043E\u0440\u0442\",\"quantity\":10,\"armor\":\"100\",\"baseDamage\":10,\"damage\":{\"armor\":{\"lightArmor\":1,\"mediumArmor\":1,\"heavyArmor\":0.5,\"reinforcedArmor\":0.3},\"hull\":{\"small\":1,\"medium\":1,\"large\":0.5,\"huge\":0.3}},\"armorType\":\"Medium\",\"hullSize\":\"Large\"},\"3\":{\"shipId\":4,\"name\":\"\u041F\u0435\u0440\u0435\u0440\u0430\u0431\u043E\u0442\u0447\u0438\u043A\",\"quantity\":100,\"armor\":\"10\",\"baseDamage\":1,\"damage\":{\"armor\":{\"lightArmor\":1,\"mediumArmor\":1,\"heavyArmor\":0.5,\"reinforcedArmor\":0.3},\"hull\":{\"small\":1,\"medium\":1,\"large\":0.5,\"huge\":0.3}},\"armorType\":\"Light\",\"hullSize\":\"Small\"}},\"is_garrison\":null,\"name\":null,\"belongsTo\":3,\"captain\":null,\"metal\":0,\"crystal\":0,\"gas\":30000}}},\"1\":{\"id\":1,\"fleets\":{\"0\":{\"ships\":{\"0\":{\"shipId\":1,\"name\":\"\u0422\u044F\u0436\u0435\u043B\u044B\u0439 \u0438\u0441\u0442\u0440\u0435\u0431\u0438\u0442\u0435\u043B\u044C\",\"quantity\":50,\"armor\":\"100\",\"baseDamage\":10,\"damage\":{\"armor\":{\"lightArmor\":1,\"mediumArmor\":1,\"heavyArmor\":0.5,\"reinforcedArmor\":0.3},\"hull\":{\"small\":1,\"medium\":1,\"large\":0.5,\"huge\":0.3}},\"armorType\":\"Light\",\"hullSize\":\"Small\"}},\"id\":340,\"is_garrison\":null,\"name\":\"neutral fleet name\",\"belongsTo\":10,\"captain\":null,\"metal\":0,\"crystal\":0,\"gas\":3000},\"1\":{\"id\":233,\"ships\":{\"0\":{\"shipId\":1,\"name\":\"\u0422\u044F\u0436\u0435\u043B\u044B\u0439 \u0438\u0441\u0442\u0440\u0435\u0431\u0438\u0442\u0435\u043B\u044C\",\"quantity\":10,\"armor\":\"100\",\"baseDamage\":10,\"damage\":{\"armor\":{\"lightArmor\":1,\"mediumArmor\":1,\"heavyArmor\":0.5,\"reinforcedArmor\":0.3},\"hull\":{\"small\":1,\"medium\":1,\"large\":0.5,\"huge\":0.3}},\"armorType\":\"Light\",\"hullSize\":\"Small\"}},\"is_garrison\":null,\"name\":null,\"belongsTo\":15,\"captain\":null,\"metal\":0,\"crystal\":0,\"gas\":300},\"2\":{\"ships\":{\"0\":{\"shipId\":1,\"name\":\"\u0422\u044F\u0436\u0435\u043B\u044B\u0439 \u0438\u0441\u0442\u0440\u0435\u0431\u0438\u0442\u0435\u043B\u044C\",\"quantity\":10,\"armor\":\"100\",\"baseDamage\":10,\"damage\":{\"armor\":{\"lightArmor\":1,\"mediumArmor\":1,\"heavyArmor\":0.5,\"reinforcedArmor\":0.3},\"hull\":{\"small\":1,\"medium\":1,\"large\":0.5,\"huge\":0.3}},\"armorType\":\"Light\",\"hullSize\":\"Small\"}},\"id\":234,\"is_garrison\":null,\"name\":null,\"belongsTo\":15,\"captain\":null,\"metal\":0,\"crystal\":0,\"gas\":300}}}}}";
        var fleet = JSON.Parse(jsonStr);

        foreach (JSONNode BattleSide in fleet["sides"])
        {
            //сторона
            GameObject sideObject = _side.Create(BattleSide);

            int FleetInSideNumber = 0;
            foreach (JSONNode BattleFleet in BattleSide["fleets"])
            {
                var _fleet = sideObject.AddComponent <Fleet>();

                //флот внутри стороны
                GameObject fleetObject = _fleet.Create(sideObject, BattleFleet, BattleSide["fleets"].Count, FleetInSideNumber);

                int shipQuantity = BattleFleet["ships"].Count;
                int ShipInFleet  = 0;
                foreach (JSONNode ship in BattleFleet["ships"])
                {
                    //корабли внутри флота
                    var        _spaceShip = fleetObject.AddComponent <SpaceShip>();
                    GameObject shipObject = ShipsController.Create(fleetObject, ship, shipQuantity, ShipInFleet);
                    ShipInFleet++;
                }
                FleetInSideNumber++;
            }
        }
    }
コード例 #2
0
ファイル: Prism.cs プロジェクト: ruicaridade/IP3D
        public void Create(short prismSides, float baseRadius, float height)
        {
            topBase = new Base();
            bottomBase = new Base();
            side = new Side();

            topBase.Create(prismSides, baseRadius, height, true);
            bottomBase.Create(prismSides, baseRadius, 0, false, topBase.Vertices.Length);
            side.Create(prismSides, bottomBase, topBase);

            side.GenerateNormals();

            indices = new short[topBase.Indices.Length * 2 + side.Indices.Length];
            topBase.Indices.CopyTo(indices, 0);
            bottomBase.Indices.CopyTo(indices, topBase.Indices.Length);
            side.Indices.CopyTo(indices, topBase.Indices.Length + bottomBase.Indices.Length);

            vertices = new VertexPositionNormalTexture[topBase.Vertices.Length * 4];
            topBase.Vertices.CopyTo(vertices, 0);
            bottomBase.Vertices.CopyTo(vertices, topBase.Vertices.Length);
            side.Vertices.CopyTo(vertices, topBase.Vertices.Length + bottomBase.Vertices.Length);

            primitiveCountPerBase = prismSides*2-1;
            primitiveCountSide = prismSides*2;

            indexBuffer = new IndexBuffer(graphicsDevice, typeof(short),
                indices.Length, BufferUsage.WriteOnly);
            vertexBuffer = new VertexBuffer(graphicsDevice, VertexPositionNormalTexture.VertexDeclaration,
                vertices.Length, BufferUsage.WriteOnly);

            vertexBuffer.SetData(vertices);
            indexBuffer.SetData(indices);
        }
コード例 #3
0
    public void JsonParse()
    {
        jsonStr = "{\"sides\":{\"0\":{\"ships\":{\"0\":{\"shipId\":1,\"name\":\"\u0422\u044F\u0436\u0435\u043B\u044B\u0439 \u0438\u0441\u0442\u0440\u0435\u0431\u0438\u0442\u0435\u043B\u044C\",\"quantity\":56,\"armor\":\"100\",\"baseDamage\":10,\"damage\":{\"armor\":{\"lightArmor\":1,\"mediumArmor\":1,\"heavyArmor\":0.5,\"reinforcedArmor\":0.3},\"hull\":{\"small\":1,\"medium\":1,\"large\":0.5,\"huge\":0.3}},\"armorType\":\"light\",\"hullSize\":\"small\"},\"1\":{\"shipId\":12,\"name\":\"\u041C\u0430\u043B\u044B\u0439 \u0442\u0440\u0430\u043D\u0441\u043F\u043E\u0440\u0442\",\"quantity\":1,\"armor\":\"10\",\"baseDamage\":1,\"damage\":{\"armor\":{\"lightArmor\":1,\"mediumArmor\":1,\"heavyArmor\":0.5,\"reinforcedArmor\":0.3},\"hull\":{\"small\":1,\"medium\":1,\"large\":0.5,\"huge\":0.3}},\"armorType\":\"light\",\"hullSize\":\"small\"},\"2\":{\"shipId\":13,\"name\":\"\u0411\u043E\u043B\u044C\u0448\u043E\u0439 \u0442\u0440\u0430\u043D\u0441\u043F\u043E\u0440\u0442\",\"quantity\":1,\"armor\":\"100\",\"baseDamage\":10,\"damage\":{\"armor\":{\"lightArmor\":1,\"mediumArmor\":1,\"heavyArmor\":0.5,\"reinforcedArmor\":0.3},\"hull\":{\"small\":1,\"medium\":1,\"large\":0.5,\"huge\":0.3}},\"armorType\":\"medium\",\"hullSize\":\"large\"},\"3\":{\"shipId\":14,\"name\":\"\u041F\u0435\u0440\u0435\u0440\u0430\u0431\u043E\u0442\u0447\u0438\u043A\",\"quantity\":1,\"armor\":\"10\",\"baseDamage\":1,\"damage\":{\"armor\":{\"lightArmor\":1,\"mediumArmor\":1,\"heavyArmor\":0.5,\"reinforcedArmor\":0.3},\"hull\":{\"small\":1,\"medium\":1,\"large\":0.5,\"huge\":0.3}},\"armorType\":\"light\",\"hullSize\":\"small\"}},\"is_garrison\":null,\"name\":null,\"belongsTo\":\"self\",\"captain\":null,\"metal\":110600,\"crystal\":27705,\"gas\":3026},\"1\":{\"ships\":{\"0\":{\"shipId\":1,\"name\":\"\u0422\u044F\u0436\u0435\u043B\u044B\u0439 \u0438\u0441\u0442\u0440\u0435\u0431\u0438\u0442\u0435\u043B\u044C\",\"quantity\":100,\"armor\":\"100\",\"baseDamage\":10,\"damage\":{\"armor\":{\"lightArmor\":1,\"mediumArmor\":1,\"heavyArmor\":0.5,\"reinforcedArmor\":0.3},\"hull\":{\"small\":1,\"medium\":1,\"large\":0.5,\"huge\":0.3}},\"armorType\":\"light\",\"hullSize\":\"small\"},\"1\":{\"shipId\":13,\"name\":\"\u0411\u043E\u043B\u044C\u0448\u043E\u0439 \u0442\u0440\u0430\u043D\u0441\u043F\u043E\u0440\u0442\",\"quantity\":10,\"armor\":\"100\",\"baseDamage\":10,\"damage\":{\"armor\":{\"lightArmor\":1,\"mediumArmor\":1,\"heavyArmor\":0.5,\"reinforcedArmor\":0.3},\"hull\":{\"small\":1,\"medium\":1,\"large\":0.5,\"huge\":0.3}},\"armorType\":\"medium\",\"hullSize\":\"large\"}},\"is_garrison\":null,\"name\":null,\"belongsTo\":\"self\",\"captain\":null,\"metal\":110600,\"crystal\":27705,\"gas\":3026}}}";
        var fleet = JSON.Parse(jsonStr);

        foreach (JSONNode JsonSide in fleet["sides"])
        {
            Side       Side       = new Side();
            GameObject sideObject = Side.Create(JsonSide);

            foreach (JSONNode ship in JsonSide["ships"])
            {
                //Debug.Log("id : " + ship["shipId"] + "name : " + ship["name"]);

                //ShipGenerator shipGenerator = new ShipGenerator();
                //GameObject shipObject = shipGenerator.create(sideObject, ship);
            }
        }
    }