forked from StrafesNET/strafe-project
bsp_loader: define all entities
This commit is contained in:
parent
dc588ea84d
commit
83a09703d3
@ -182,25 +182,134 @@ pub fn convert<'a>(
|
||||
const ENTITY_TRIGGER_ATTRIBUTE:gameplay_attributes::CollisionAttributesId=ATTRIBUTE_INTERSECT_DEFAULT;
|
||||
for raw_ent in &bsp.entities{
|
||||
match raw_ent.parse(){
|
||||
Ok(Entity::AmbientGeneric(ambient_generic))=>(),
|
||||
Ok(Entity::Cycler(brush))=>add_brush(mesh_deferred_loader,&mut world_models,&mut prop_models,brush.model,brush.origin,brush.rendercolor,ENTITY_ATTRIBUTE),
|
||||
Ok(Entity::EnvBeam(env_beam))=>(),
|
||||
Ok(Entity::EnvBubbles(env_bubbles))=>(),
|
||||
Ok(Entity::EnvDetailController(env_detail_controller))=>(),
|
||||
Ok(Entity::EnvEmbers(env_embers))=>(),
|
||||
Ok(Entity::EnvEntityMaker(env_entity_maker))=>(),
|
||||
Ok(Entity::EnvExplosion(env_explosion))=>(),
|
||||
Ok(Entity::EnvFade(env_fade))=>(),
|
||||
Ok(Entity::EnvFire(env_fire))=>(),
|
||||
Ok(Entity::EnvFireTrail(env_fire_trail))=>(),
|
||||
Ok(Entity::EnvFiresource(env_firesource))=>(),
|
||||
Ok(Entity::EnvFogController(env_fog_controller))=>(),
|
||||
Ok(Entity::EnvHudhint(env_hudhint))=>(),
|
||||
Ok(Entity::EnvLaser(env_laser))=>(),
|
||||
Ok(Entity::EnvLightglow(env_lightglow))=>(),
|
||||
Ok(Entity::EnvPhysexplosion(env_physexplosion))=>(),
|
||||
Ok(Entity::EnvProjectedtexture(env_projectedtexture))=>(),
|
||||
Ok(Entity::EnvScreenoverlay(env_screenoverlay))=>(),
|
||||
Ok(Entity::EnvShake(env_shake))=>(),
|
||||
Ok(Entity::EnvShooter(env_shooter))=>(),
|
||||
Ok(Entity::EnvSmokestack(env_smokestack))=>(),
|
||||
Ok(Entity::EnvSoundscape(env_soundscape))=>(),
|
||||
Ok(Entity::EnvSoundscapeProxy(env_soundscape_proxy))=>(),
|
||||
Ok(Entity::EnvSoundscapeTriggerable(env_soundscape_triggerable))=>(),
|
||||
Ok(Entity::EnvSpark(env_spark))=>(),
|
||||
Ok(Entity::EnvSprite(brush))=>add_brush(mesh_deferred_loader,&mut world_models,&mut prop_models,brush.model,brush.origin,brush.rendercolor.parse().unwrap_or(WHITE),ENTITY_ATTRIBUTE),
|
||||
Ok(Entity::EnvSpritetrail(env_spritetrail))=>(),
|
||||
Ok(Entity::EnvSteam(env_steam))=>(),
|
||||
Ok(Entity::EnvSun(env_sun))=>(),
|
||||
Ok(Entity::EnvTonemapController(env_tonemap_controller))=>(),
|
||||
Ok(Entity::EnvWind(env_wind))=>(),
|
||||
Ok(Entity::FilterActivatorClass(filter_activator_class))=>(),
|
||||
Ok(Entity::FilterActivatorName(filter_activator_name))=>(),
|
||||
Ok(Entity::FilterDamageType(filter_damage_type))=>(),
|
||||
Ok(Entity::FilterMulti(filter_multi))=>(),
|
||||
Ok(Entity::FuncAreaportal(func_areaportal))=>(),
|
||||
Ok(Entity::FuncAreaportalwindow(func_areaportalwindow))=>(),
|
||||
Ok(Entity::FuncBombTarget(func_bomb_target))=>(),
|
||||
Ok(Entity::FuncBreakable(brush))=>add_brush(mesh_deferred_loader,&mut world_models,&mut prop_models,brush.model,brush.origin,brush.rendercolor,ENTITY_ATTRIBUTE),
|
||||
Ok(Entity::FuncBreakableSurf(func_breakable_surf))=>(),
|
||||
Ok(Entity::FuncBrush(brush))=>add_brush(mesh_deferred_loader,&mut world_models,&mut prop_models,brush.model,brush.origin,brush.rendercolor,ENTITY_ATTRIBUTE),
|
||||
Ok(Entity::FuncButton(brush))=>add_brush(mesh_deferred_loader,&mut world_models,&mut prop_models,brush.model,brush.origin,brush.rendercolor,ENTITY_ATTRIBUTE),
|
||||
Ok(Entity::FuncBuyzone(func_buyzone))=>(),
|
||||
Ok(Entity::FuncClipVphysics(func_clip_vphysics))=>(),
|
||||
Ok(Entity::FuncConveyor(func_conveyor))=>(),
|
||||
Ok(Entity::FuncDoor(brush))=>add_brush(mesh_deferred_loader,&mut world_models,&mut prop_models,brush.model,brush.origin,brush.rendercolor,ENTITY_ATTRIBUTE),
|
||||
Ok(Entity::FuncDoorRotating(brush))=>add_brush(mesh_deferred_loader,&mut world_models,&mut prop_models,brush.model,brush.origin,brush.rendercolor,ENTITY_ATTRIBUTE),
|
||||
Ok(Entity::FuncDustcloud(func_dustcloud))=>(),
|
||||
Ok(Entity::FuncDustmotes(func_dustmotes))=>(),
|
||||
Ok(Entity::FuncFishPool(func_fish_pool))=>(),
|
||||
Ok(Entity::FuncFootstepControl(func_footstep_control))=>(),
|
||||
Ok(Entity::FuncHostageRescue(func_hostage_rescue))=>(),
|
||||
Ok(Entity::FuncIllusionary(brush))=>add_brush(mesh_deferred_loader,&mut world_models,&mut prop_models,brush.model,brush.origin,brush.rendercolor,ENTITY_ATTRIBUTE),
|
||||
Ok(Entity::FuncLod(func_lod))=>(),
|
||||
Ok(Entity::FuncMonitor(brush))=>add_brush(mesh_deferred_loader,&mut world_models,&mut prop_models,brush.model,brush.origin,brush.rendercolor,ENTITY_ATTRIBUTE),
|
||||
Ok(Entity::FuncMovelinear(brush))=>add_brush(mesh_deferred_loader,&mut world_models,&mut prop_models,brush.model,brush.origin,brush.rendercolor,ENTITY_ATTRIBUTE),
|
||||
Ok(Entity::FuncOccluder(func_occluder))=>(),
|
||||
Ok(Entity::FuncPhysbox(brush))=>add_brush(mesh_deferred_loader,&mut world_models,&mut prop_models,brush.model,brush.origin,brush.rendercolor,ENTITY_ATTRIBUTE),
|
||||
Ok(Entity::FuncPhysboxMultiplayer(brush))=>add_brush(mesh_deferred_loader,&mut world_models,&mut prop_models,brush.model,brush.origin,brush.rendercolor,ENTITY_ATTRIBUTE),
|
||||
Ok(Entity::FuncPrecipitation(func_precipitation))=>(),
|
||||
Ok(Entity::FuncRotButton(brush))=>add_brush(mesh_deferred_loader,&mut world_models,&mut prop_models,brush.model,brush.origin,WHITE,ENTITY_ATTRIBUTE),
|
||||
Ok(Entity::FuncRotating(brush))=>add_brush(mesh_deferred_loader,&mut world_models,&mut prop_models,brush.model,brush.origin,brush.rendercolor,ENTITY_ATTRIBUTE),
|
||||
Ok(Entity::FuncSmokevolume(func_smokevolume))=>(),
|
||||
Ok(Entity::FuncTracktrain(brush))=>add_brush(mesh_deferred_loader,&mut world_models,&mut prop_models,brush.model,brush.origin,brush.rendercolor,ENTITY_ATTRIBUTE),
|
||||
Ok(Entity::FuncTrain(brush))=>add_brush(mesh_deferred_loader,&mut world_models,&mut prop_models,brush.model,brush.origin,brush.rendercolor,ENTITY_ATTRIBUTE),
|
||||
Ok(Entity::FuncWall(brush))=>add_brush(mesh_deferred_loader,&mut world_models,&mut prop_models,brush.model,brush.origin.unwrap_or_default(),brush.rendercolor,ENTITY_ATTRIBUTE),
|
||||
Ok(Entity::FuncWallToggle(brush))=>add_brush(mesh_deferred_loader,&mut world_models,&mut prop_models,brush.model,brush.origin.unwrap_or_default(),brush.rendercolor,ENTITY_ATTRIBUTE),
|
||||
Ok(Entity::FuncWaterAnalog(brush))=>add_brush(mesh_deferred_loader,&mut world_models,&mut prop_models,brush.model,brush.origin,brush.rendercolor.unwrap_or(WHITE),ENTITY_ATTRIBUTE),
|
||||
Ok(Entity::GamePlayerEquip(game_player_equip))=>(),
|
||||
Ok(Entity::GameText(game_text))=>(),
|
||||
Ok(Entity::GameUi(game_ui))=>(),
|
||||
Ok(Entity::GameWeaponManager(game_weapon_manager))=>(),
|
||||
Ok(Entity::HostageEntity(hostage_entity))=>(),
|
||||
Ok(Entity::InfoCameraLink(info_camera_link))=>(),
|
||||
Ok(Entity::InfoLadder(info_ladder))=>(),
|
||||
Ok(Entity::InfoLightingRelative(info_lighting_relative))=>(),
|
||||
Ok(Entity::InfoMapParameters(info_map_parameters))=>(),
|
||||
Ok(Entity::InfoNode(info_node))=>(),
|
||||
Ok(Entity::InfoNodeHint(info_node_hint))=>(),
|
||||
Ok(Entity::InfoParticleSystem(info_particle_system))=>(),
|
||||
Ok(Entity::InfoPlayerCounterterrorist(spawn))=>{
|
||||
found_spawn=Some(valve_transform(spawn.origin.into()));
|
||||
},
|
||||
Ok(Entity::InfoPlayerLogo(info_player_logo))=>(),
|
||||
Ok(Entity::InfoPlayerStart(info_player_start))=>(),
|
||||
Ok(Entity::InfoPlayerTerrorist(spawn))=>{
|
||||
found_spawn=Some(valve_transform(spawn.origin.into()));
|
||||
},
|
||||
Ok(Entity::InfoTarget(info_target))=>(),
|
||||
Ok(Entity::InfoTeleportDestination(info_teleport_destination))=>(),
|
||||
Ok(Entity::Infodecal(infodecal))=>(),
|
||||
Ok(Entity::KeyframeRope(keyframe_rope))=>(),
|
||||
Ok(Entity::Light(light))=>(),
|
||||
Ok(Entity::LightEnvironment(light_environment))=>(),
|
||||
Ok(Entity::LightSpot(light_spot))=>(),
|
||||
Ok(Entity::LogicAuto(logic_auto))=>(),
|
||||
Ok(Entity::LogicBranch(logic_branch))=>(),
|
||||
Ok(Entity::LogicCase(logic_case))=>(),
|
||||
Ok(Entity::LogicCompare(logic_compare))=>(),
|
||||
Ok(Entity::LogicMeasureMovement(logic_measure_movement))=>(),
|
||||
Ok(Entity::LogicRelay(logic_relay))=>(),
|
||||
Ok(Entity::LogicTimer(logic_timer))=>(),
|
||||
Ok(Entity::MathCounter(math_counter))=>(),
|
||||
Ok(Entity::MoveRope(move_rope))=>(),
|
||||
Ok(Entity::PathTrack(path_track))=>(),
|
||||
Ok(Entity::PhysBallsocket(phys_ballsocket))=>(),
|
||||
Ok(Entity::PhysConstraint(phys_constraint))=>(),
|
||||
Ok(Entity::PhysConstraintsystem(phys_constraintsystem))=>(),
|
||||
Ok(Entity::PhysHinge(phys_hinge))=>(),
|
||||
Ok(Entity::PhysKeepupright(phys_keepupright))=>(),
|
||||
Ok(Entity::PhysLengthconstraint(phys_lengthconstraint))=>(),
|
||||
Ok(Entity::PhysPulleyconstraint(phys_pulleyconstraint))=>(),
|
||||
Ok(Entity::PhysRagdollconstraint(phys_ragdollconstraint))=>(),
|
||||
Ok(Entity::PhysRagdollmagnet(phys_ragdollmagnet))=>(),
|
||||
Ok(Entity::PhysThruster(phys_thruster))=>(),
|
||||
Ok(Entity::PhysTorque(phys_torque))=>(),
|
||||
Ok(Entity::PlayerSpeedmod(player_speedmod))=>(),
|
||||
Ok(Entity::PlayerWeaponstrip(player_weaponstrip))=>(),
|
||||
Ok(Entity::PointCamera(point_camera))=>(),
|
||||
Ok(Entity::PointClientcommand(point_clientcommand))=>(),
|
||||
Ok(Entity::PointDevshotCamera(point_devshot_camera))=>(),
|
||||
Ok(Entity::PointServercommand(point_servercommand))=>(),
|
||||
Ok(Entity::PointSpotlight(point_spotlight))=>(),
|
||||
Ok(Entity::PointSurroundtest(point_surroundtest))=>(),
|
||||
Ok(Entity::PointTemplate(point_template))=>(),
|
||||
Ok(Entity::PointTesla(point_tesla))=>(),
|
||||
Ok(Entity::PointViewcontrol(point_viewcontrol))=>(),
|
||||
Ok(Entity::PropDoorRotating(brush))=>add_brush(mesh_deferred_loader,&mut world_models,&mut prop_models,brush.model,brush.origin,WHITE,ENTITY_ATTRIBUTE),
|
||||
Ok(Entity::PropDynamic(brush))=>add_brush(mesh_deferred_loader,&mut world_models,&mut prop_models,brush.model,brush.origin,WHITE,ENTITY_ATTRIBUTE),
|
||||
Ok(Entity::PropDynamicOverride(brush))=>add_brush(mesh_deferred_loader,&mut world_models,&mut prop_models,brush.model,brush.origin,WHITE,ENTITY_ATTRIBUTE),
|
||||
@ -208,6 +317,8 @@ pub fn convert<'a>(
|
||||
Ok(Entity::PropPhysicsMultiplayer(brush))=>add_brush(mesh_deferred_loader,&mut world_models,&mut prop_models,brush.model,brush.origin,WHITE,ENTITY_ATTRIBUTE),
|
||||
Ok(Entity::PropPhysicsOverride(brush))=>add_brush(mesh_deferred_loader,&mut world_models,&mut prop_models,brush.model,brush.origin,WHITE,ENTITY_ATTRIBUTE),
|
||||
Ok(Entity::PropRagdoll(brush))=>add_brush(mesh_deferred_loader,&mut world_models,&mut prop_models,brush.model,brush.origin,WHITE,ENTITY_ATTRIBUTE),
|
||||
Ok(Entity::ShadowControl(shadow_control))=>(),
|
||||
Ok(Entity::SkyCamera(sky_camera))=>(),
|
||||
Ok(Entity::TriggerGravity(brush))=>add_brush(mesh_deferred_loader,&mut world_models,&mut prop_models,brush.model,brush.origin,WHITE,ENTITY_TRIGGER_ATTRIBUTE),
|
||||
Ok(Entity::TriggerHurt(brush))=>add_brush(mesh_deferred_loader,&mut world_models,&mut prop_models,brush.model,brush.origin,WHITE,ENTITY_TRIGGER_ATTRIBUTE),
|
||||
Ok(Entity::TriggerLook(brush))=>add_brush(mesh_deferred_loader,&mut world_models,&mut prop_models,brush.model,brush.origin,WHITE,ENTITY_TRIGGER_ATTRIBUTE),
|
||||
@ -219,12 +330,32 @@ pub fn convert<'a>(
|
||||
Ok(Entity::TriggerTeleport(brush))=>add_brush(mesh_deferred_loader,&mut world_models,&mut prop_models,brush.model.unwrap_or_default(),brush.origin,WHITE,ENTITY_TRIGGER_ATTRIBUTE),
|
||||
Ok(Entity::TriggerVphysicsMotion(brush))=>add_brush(mesh_deferred_loader,&mut world_models,&mut prop_models,brush.model,brush.origin,WHITE,ENTITY_TRIGGER_ATTRIBUTE),
|
||||
Ok(Entity::TriggerWind(brush))=>add_brush(mesh_deferred_loader,&mut world_models,&mut prop_models,brush.model,brush.origin,WHITE,ENTITY_TRIGGER_ATTRIBUTE),
|
||||
Ok(Entity::InfoPlayerCounterterrorist(spawn))=>{
|
||||
found_spawn=Some(valve_transform(spawn.origin.into()));
|
||||
},
|
||||
Ok(Entity::InfoPlayerTerrorist(spawn))=>{
|
||||
found_spawn=Some(valve_transform(spawn.origin.into()));
|
||||
},
|
||||
Ok(Entity::WaterLodControl(water_lod_control))=>(),
|
||||
Ok(Entity::WeaponAk47(weapon_ak47))=>(),
|
||||
Ok(Entity::WeaponAwp(weapon_awp))=>(),
|
||||
Ok(Entity::WeaponDeagle(weapon_deagle))=>(),
|
||||
Ok(Entity::WeaponElite(weapon_elite))=>(),
|
||||
Ok(Entity::WeaponFamas(weapon_famas))=>(),
|
||||
Ok(Entity::WeaponFiveseven(weapon_fiveseven))=>(),
|
||||
Ok(Entity::WeaponFlashbang(weapon_flashbang))=>(),
|
||||
Ok(Entity::WeaponG3sg1(weapon_g3sg1))=>(),
|
||||
Ok(Entity::WeaponGlock(weapon_glock))=>(),
|
||||
Ok(Entity::WeaponHegrenade(weapon_hegrenade))=>(),
|
||||
Ok(Entity::WeaponKnife(weapon_knife))=>(),
|
||||
Ok(Entity::WeaponM249(weapon_m249))=>(),
|
||||
Ok(Entity::WeaponM3(weapon_m3))=>(),
|
||||
Ok(Entity::WeaponM4a1(weapon_m4a1))=>(),
|
||||
Ok(Entity::WeaponMac10(weapon_mac10))=>(),
|
||||
Ok(Entity::WeaponP228(weapon_p228))=>(),
|
||||
Ok(Entity::WeaponP90(weapon_p90))=>(),
|
||||
Ok(Entity::WeaponScout(weapon_scout))=>(),
|
||||
Ok(Entity::WeaponSg550(weapon_sg550))=>(),
|
||||
Ok(Entity::WeaponSmokegrenade(weapon_smokegrenade))=>(),
|
||||
Ok(Entity::WeaponTmp(weapon_tmp))=>(),
|
||||
Ok(Entity::WeaponUmp45(weapon_ump45))=>(),
|
||||
Ok(Entity::WeaponUsp(weapon_usp))=>(),
|
||||
Ok(Entity::WeaponXm1014(weapon_xm1014))=>(),
|
||||
Ok(Entity::Worldspawn(worldspawn))=>(),
|
||||
Err(e)=>{
|
||||
println!("Bsp Entity parse error: {e}");
|
||||
},
|
||||
|
Loading…
x
Reference in New Issue
Block a user