コード例 #1
0
 public void SetType(faceType type)
 {
     typeOfFace           = type;
     this.gameObject.name = type.ToString();
 }
コード例 #2
0
ファイル: Face.cs プロジェクト: Avatarchik/bsp-decompiler-1
	public Face(byte[] data, mapType type):base(data) {
		switch (type) {
			case mapType.TYPE_QUAKE:
			case mapType.TYPE_QUAKE2:
			case mapType.TYPE_DAIKATANA:
			case mapType.TYPE_SIN:
			case mapType.TYPE_SOF:
				plane = DataReader.readUShort(data[0], data[1]);
				side = DataReader.readUShort(data[2], data[3]);
				firstEdge = DataReader.readInt(data[4], data[5], data[6], data[7]);
				numEdges = DataReader.readUShort(data[8], data[9]);
				texture = DataReader.readUShort(data[10], data[11]);
				break;
			case mapType.TYPE_RAVEN:
				texture = DataReader.readInt(data[0], data[1], data[2], data[3]);
				facetype = (faceType)DataReader.readInt(data[8], data[9], data[10], data[11]);
				firstVertex = DataReader.readInt(data[12], data[13], data[14], data[15]);
				numVertices = DataReader.readInt(data[16], data[17], data[18], data[19]);
				patchSize[0] = DataReader.readInt(data[140], data[141], data[142], data[143]);
				patchSize[1] = DataReader.readInt(data[144], data[145], data[146], data[147]);
				break;
			case mapType.TYPE_STEF2:
			case mapType.TYPE_STEF2DEMO:
			case mapType.TYPE_QUAKE3:
			case mapType.TYPE_MOHAA:
			//case mapType.TYPE_FAKK:
			//case mapType.TYPE_COD:
			//case mapType.TYPE_COD2:
			//case mapType.TYPE_COD4:
				texture = DataReader.readInt(data[0], data[1], data[2], data[3]);
				facetype = (faceType)DataReader.readInt(data[8], data[9], data[10], data[11]);
				firstVertex = DataReader.readInt(data[12], data[13], data[14], data[15]);
				numVertices = DataReader.readInt(data[16], data[17], data[18], data[19]);
				patchSize[0] = DataReader.readInt(data[96], data[97], data[98], data[99]);
				patchSize[1] = DataReader.readInt(data[100], data[101], data[102], data[103]);
				break;
			case mapType.TYPE_SOURCE17:
				plane = DataReader.readUShort(data[32], data[33]);
				side = (int) data[34];
				firstEdge = DataReader.readInt(data[36], data[37], data[38], data[39]);
				numEdges = DataReader.readUShort(data[40], data[41]);
				texture = DataReader.readUShort(data[42], data[43]);
				displacement = DataReader.readShort(data[44], data[45]);
				original = DataReader.readInt(data[96], data[97], data[98], data[99]);
				break;
			case mapType.TYPE_SOURCE18:
			case mapType.TYPE_SOURCE19:
			case mapType.TYPE_SOURCE20:
			case mapType.TYPE_SOURCE21:
			case mapType.TYPE_SOURCE22:
			case mapType.TYPE_SOURCE23:
			case mapType.TYPE_SOURCE27:
			case mapType.TYPE_TACTICALINTERVENTION:
			case mapType.TYPE_DMOMAM:
				plane = DataReader.readUShort(data[0], data[1]);
				side = (int) data[2];
				firstEdge = DataReader.readInt(data[4], data[5], data[6], data[7]);
				numEdges = DataReader.readUShort(data[8], data[9]);
				texture = DataReader.readUShort(data[10], data[11]);
				displacement = DataReader.readShort(data[12], data[13]);
				original = DataReader.readInt(data[44], data[45], data[46], data[47]);
				break;
			case mapType.TYPE_VINDICTUS:
				plane = DataReader.readInt(data[0], data[1], data[2], data[3]);
				side = (int) data[4];
				firstEdge = DataReader.readInt(data[8], data[9], data[10], data[11]);
				numEdges = DataReader.readInt(data[12], data[13], data[14], data[15]);
				texture = DataReader.readInt(data[16], data[17], data[18], data[19]);
				displacement = DataReader.readInt(data[20], data[21], data[22], data[23]);
				original = DataReader.readInt(data[56], data[57], data[58], data[59]);
				break;
			case mapType.TYPE_NIGHTFIRE:
				plane = DataReader.readInt(data[0], data[1], data[2], data[3]);
				firstVertex = DataReader.readInt(data[4], data[5], data[6], data[7]);
				numVertices = DataReader.readInt(data[8], data[9], data[10], data[11]);
				flags = DataReader.readInt(data[20], data[21], data[22], data[23]);
				texture = DataReader.readInt(data[24], data[25], data[26], data[27]);
				material = DataReader.readInt(data[28], data[29], data[30], data[31]);
				textureScale = DataReader.readInt(data[32], data[33], data[34], data[35]);
				break;
		}
	}
コード例 #3
0
 public void SetType(faceType type)
 {
     typeOfFace = type;
     this.gameObject.name = type.ToString ();
 }
コード例 #4
0
ファイル: Face.cs プロジェクト: RomanHargrave/bsp-decompiler
    public Face(byte[] data, mapType type) : base(data)
    {
        switch (type)
        {
        case mapType.TYPE_QUAKE:
        case mapType.TYPE_QUAKE2:
        case mapType.TYPE_DAIKATANA:
        case mapType.TYPE_SIN:
        case mapType.TYPE_SOF:
            plane     = DataReader.readUShort(data[0], data[1]);
            side      = DataReader.readUShort(data[2], data[3]);
            firstEdge = DataReader.readInt(data[4], data[5], data[6], data[7]);
            numEdges  = DataReader.readUShort(data[8], data[9]);
            texture   = DataReader.readUShort(data[10], data[11]);
            break;

        case mapType.TYPE_RAVEN:
            texture      = DataReader.readInt(data[0], data[1], data[2], data[3]);
            facetype     = (faceType)DataReader.readInt(data[8], data[9], data[10], data[11]);
            firstVertex  = DataReader.readInt(data[12], data[13], data[14], data[15]);
            numVertices  = DataReader.readInt(data[16], data[17], data[18], data[19]);
            patchSize[0] = DataReader.readInt(data[140], data[141], data[142], data[143]);
            patchSize[1] = DataReader.readInt(data[144], data[145], data[146], data[147]);
            break;

        case mapType.TYPE_STEF2:
        case mapType.TYPE_STEF2DEMO:
        case mapType.TYPE_QUAKE3:
        case mapType.TYPE_MOHAA:
            //case mapType.TYPE_FAKK:
            //case mapType.TYPE_COD:
            //case mapType.TYPE_COD2:
            //case mapType.TYPE_COD4:
            texture      = DataReader.readInt(data[0], data[1], data[2], data[3]);
            facetype     = (faceType)DataReader.readInt(data[8], data[9], data[10], data[11]);
            firstVertex  = DataReader.readInt(data[12], data[13], data[14], data[15]);
            numVertices  = DataReader.readInt(data[16], data[17], data[18], data[19]);
            patchSize[0] = DataReader.readInt(data[96], data[97], data[98], data[99]);
            patchSize[1] = DataReader.readInt(data[100], data[101], data[102], data[103]);
            break;

        case mapType.TYPE_SOURCE17:
            plane        = DataReader.readUShort(data[32], data[33]);
            side         = (int)data[34];
            firstEdge    = DataReader.readInt(data[36], data[37], data[38], data[39]);
            numEdges     = DataReader.readUShort(data[40], data[41]);
            texture      = DataReader.readUShort(data[42], data[43]);
            displacement = DataReader.readShort(data[44], data[45]);
            original     = DataReader.readInt(data[96], data[97], data[98], data[99]);
            break;

        case mapType.TYPE_SOURCE18:
        case mapType.TYPE_SOURCE19:
        case mapType.TYPE_SOURCE20:
        case mapType.TYPE_SOURCE21:
        case mapType.TYPE_SOURCE22:
        case mapType.TYPE_SOURCE23:
        case mapType.TYPE_SOURCE27:
        case mapType.TYPE_TACTICALINTERVENTION:
        case mapType.TYPE_DMOMAM:
            plane        = DataReader.readUShort(data[0], data[1]);
            side         = (int)data[2];
            firstEdge    = DataReader.readInt(data[4], data[5], data[6], data[7]);
            numEdges     = DataReader.readUShort(data[8], data[9]);
            texture      = DataReader.readUShort(data[10], data[11]);
            displacement = DataReader.readShort(data[12], data[13]);
            original     = DataReader.readInt(data[44], data[45], data[46], data[47]);
            break;

        case mapType.TYPE_VINDICTUS:
            plane        = DataReader.readInt(data[0], data[1], data[2], data[3]);
            side         = (int)data[4];
            firstEdge    = DataReader.readInt(data[8], data[9], data[10], data[11]);
            numEdges     = DataReader.readInt(data[12], data[13], data[14], data[15]);
            texture      = DataReader.readInt(data[16], data[17], data[18], data[19]);
            displacement = DataReader.readInt(data[20], data[21], data[22], data[23]);
            original     = DataReader.readInt(data[56], data[57], data[58], data[59]);
            break;

        case mapType.TYPE_NIGHTFIRE:
            plane        = DataReader.readInt(data[0], data[1], data[2], data[3]);
            firstVertex  = DataReader.readInt(data[4], data[5], data[6], data[7]);
            numVertices  = DataReader.readInt(data[8], data[9], data[10], data[11]);
            flags        = DataReader.readInt(data[20], data[21], data[22], data[23]);
            texture      = DataReader.readInt(data[24], data[25], data[26], data[27]);
            material     = DataReader.readInt(data[28], data[29], data[30], data[31]);
            textureScale = DataReader.readInt(data[32], data[33], data[34], data[35]);
            break;
        }
    }