⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 edict_t.java

📁 Jake2是一个Java 3D游戏引擎.
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
        if (key.equals("health")) {            health = Lib.atoi(value);            return true;        } // F_INT),        if (key.equals("sounds")) {            sounds = Lib.atoi(value);            return true;        } // F_INT),        if (key.equals("light")) {            return true;        } // F_IGNORE),        if (key.equals("dmg")) {            dmg = Lib.atoi(value);            return true;        } // F_INT),        if (key.equals("mass")) {            mass = Lib.atoi(value);            return true;        } // F_INT),        if (key.equals("volume")) {            volume = Lib.atof(value);            return true;        } // F_FLOAT),        if (key.equals("attenuation")) {            attenuation = Lib.atof(value);            return true;        } // F_FLOAT),        if (key.equals("map")) {            map = GameSpawn.ED_NewString(value);            return true;        } // F_LSTRING),        if (key.equals("origin")) {            s.origin = Lib.atov(value);            return true;        } // F_VECTOR),        if (key.equals("angles")) {            s.angles = Lib.atov(value);            return true;        } // F_VECTOR),        if (key.equals("angle")) {            s.angles = new float[] { 0, Lib.atof(value), 0 };            return true;        } // F_ANGLEHACK),        if (key.equals("item")) {            GameBase.gi.error("ent.set(\"item\") called.");            return true;        } // F_ITEM)        return false;    }    /** Writes the entity to the file. */    public void write(QuakeFile f) throws IOException {        s.write(f);        f.writeBoolean(inuse);        f.writeInt(linkcount);        f.writeInt(num_clusters);        f.writeInt(9999);        if (clusternums == null)            f.writeInt(-1);        else {            f.writeInt(Defines.MAX_ENT_CLUSTERS);            for (int n = 0; n < Defines.MAX_ENT_CLUSTERS; n++)                f.writeInt(clusternums[n]);        }        f.writeInt(headnode);        f.writeInt(areanum);        f.writeInt(areanum2);        f.writeInt(svflags);        f.writeVector(mins);        f.writeVector(maxs);        f.writeVector(absmin);        f.writeVector(absmax);        f.writeVector(size);        f.writeInt(solid);        f.writeInt(clipmask);        f.writeInt(movetype);        f.writeInt(flags);        f.writeString(model);        f.writeFloat(freetime);        f.writeString(message);        f.writeString(classname);        f.writeInt(spawnflags);        f.writeFloat(timestamp);        f.writeFloat(angle);        f.writeString(target);        f.writeString(targetname);        f.writeString(killtarget);        f.writeString(team);        f.writeString(pathtarget);        f.writeString(deathtarget);        f.writeString(combattarget);        f.writeEdictRef(target_ent);        f.writeFloat(speed);        f.writeFloat(accel);        f.writeFloat(decel);        f.writeVector(movedir);        f.writeVector(pos1);        f.writeVector(pos2);        f.writeVector(velocity);        f.writeVector(avelocity);        f.writeInt(mass);        f.writeFloat(air_finished);        f.writeFloat(gravity);        f.writeEdictRef(goalentity);        f.writeEdictRef(movetarget);        f.writeFloat(yaw_speed);        f.writeFloat(ideal_yaw);        f.writeFloat(nextthink);        f.writeAdapter(prethink);        f.writeAdapter(think);        f.writeAdapter(blocked);        f.writeAdapter(touch);        f.writeAdapter(use);        f.writeAdapter(pain);        f.writeAdapter(die);        f.writeFloat(touch_debounce_time);        f.writeFloat(pain_debounce_time);        f.writeFloat(damage_debounce_time);        f.writeFloat(fly_sound_debounce_time);        f.writeFloat(last_move_time);        f.writeInt(health);        f.writeInt(max_health);        f.writeInt(gib_health);        f.writeInt(deadflag);        f.writeInt(show_hostile);        f.writeFloat(powerarmor_time);        f.writeString(map);        f.writeInt(viewheight);        f.writeInt(takedamage);        f.writeInt(dmg);        f.writeInt(radius_dmg);        f.writeFloat(dmg_radius);        f.writeInt(sounds);        f.writeInt(count);        f.writeEdictRef(chain);        f.writeEdictRef(enemy);        f.writeEdictRef(oldenemy);        f.writeEdictRef(activator);        f.writeEdictRef(groundentity);        f.writeInt(groundentity_linkcount);        f.writeEdictRef(teamchain);        f.writeEdictRef(teammaster);        f.writeEdictRef(mynoise);        f.writeEdictRef(mynoise2);        f.writeInt(noise_index);        f.writeInt(noise_index2);        f.writeFloat(volume);        f.writeFloat(attenuation);        f.writeFloat(wait);        f.writeFloat(delay);        f.writeFloat(random);        f.writeFloat(teleport_time);        f.writeInt(watertype);        f.writeInt(waterlevel);        f.writeVector(move_origin);        f.writeVector(move_angles);        f.writeInt(light_level);        f.writeInt(style);        f.writeItem(item);        moveinfo.write(f);        monsterinfo.write(f);        if (client == null)            f.writeInt(-1);        else            f.writeInt(client.index);        f.writeEdictRef(owner);        // rst's checker :-)        f.writeInt(9876);    }    /** Reads the entity from the file. */    public void read(QuakeFile f) throws IOException {        s.read(f);        inuse = f.readBoolean();        linkcount = f.readInt();        num_clusters = f.readInt();        if (f.readInt() != 9999)            new Throwable("wrong read pos!").printStackTrace();        int len = f.readInt();        if (len == -1)            clusternums = null;        else {            clusternums = new int[Defines.MAX_ENT_CLUSTERS];            for (int n = 0; n < Defines.MAX_ENT_CLUSTERS; n++)                clusternums[n] = f.readInt();        }        headnode = f.readInt();        areanum = f.readInt();        areanum2 = f.readInt();        svflags = f.readInt();        mins = f.readVector();        maxs = f.readVector();        absmin = f.readVector();        absmax = f.readVector();        size = f.readVector();        solid = f.readInt();        clipmask = f.readInt();        movetype = f.readInt();        flags = f.readInt();        model = f.readString();        freetime = f.readFloat();        message = f.readString();        classname = f.readString();        spawnflags = f.readInt();        timestamp = f.readFloat();        angle = f.readFloat();        target = f.readString();        targetname = f.readString();        killtarget = f.readString();        team = f.readString();        pathtarget = f.readString();        deathtarget = f.readString();        combattarget = f.readString();        target_ent = f.readEdictRef();        speed = f.readFloat();        accel = f.readFloat();        decel = f.readFloat();        movedir = f.readVector();        pos1 = f.readVector();        pos2 = f.readVector();        velocity = f.readVector();        avelocity = f.readVector();        mass = f.readInt();        air_finished = f.readFloat();        gravity = f.readFloat();        goalentity = f.readEdictRef();        movetarget = f.readEdictRef();        yaw_speed = f.readFloat();        ideal_yaw = f.readFloat();        nextthink = f.readFloat();        prethink = (EntThinkAdapter) f.readAdapter();        think = (EntThinkAdapter) f.readAdapter();        blocked = (EntBlockedAdapter) f.readAdapter();        touch = (EntTouchAdapter) f.readAdapter();        use = (EntUseAdapter) f.readAdapter();        pain = (EntPainAdapter) f.readAdapter();        die = (EntDieAdapter) f.readAdapter();        touch_debounce_time = f.readFloat();        pain_debounce_time = f.readFloat();        damage_debounce_time = f.readFloat();        fly_sound_debounce_time = f.readFloat();        last_move_time = f.readFloat();        health = f.readInt();        max_health = f.readInt();        gib_health = f.readInt();        deadflag = f.readInt();        show_hostile = f.readInt();        powerarmor_time = f.readFloat();        map = f.readString();        viewheight = f.readInt();        takedamage = f.readInt();        dmg = f.readInt();        radius_dmg = f.readInt();        dmg_radius = f.readFloat();        sounds = f.readInt();        count = f.readInt();        chain = f.readEdictRef();        enemy = f.readEdictRef();        oldenemy = f.readEdictRef();        activator = f.readEdictRef();        groundentity = f.readEdictRef();        groundentity_linkcount = f.readInt();        teamchain = f.readEdictRef();        teammaster = f.readEdictRef();        mynoise = f.readEdictRef();        mynoise2 = f.readEdictRef();        noise_index = f.readInt();        noise_index2 = f.readInt();        volume = f.readFloat();        attenuation = f.readFloat();        wait = f.readFloat();        delay = f.readFloat();        random = f.readFloat();        teleport_time = f.readFloat();        watertype = f.readInt();        waterlevel = f.readInt();        move_origin = f.readVector();        move_angles = f.readVector();        light_level = f.readInt();        style = f.readInt();        item = f.readItem();        moveinfo.read(f);        monsterinfo.read(f);        int ndx = f.readInt();        if (ndx == -1)            client = null;        else            client = GameBase.game.clients[ndx];        owner = f.readEdictRef();        // rst's checker :-)        if (f.readInt() != 9876)            System.err.println("ent load check failed for num " + index);    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -