这篇条目有关 Source引擎。如需详情,点击这里。

$keyvalues

From Valve Developer Community
< Zh
Revision as of 06:37, 29 June 2025 by WoShiGeNiCheng (talk | contribs) (→‎常用键值)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
English (en)中文 (zh)Translate (Translate)

$keyvalues是一个QC命令,可在所有的 起源 起源 游戏中使用。 该命令用于在.mdl文件中嵌入任意键值(en)

Note.png注意:由于这些值是任意的,studiomdl(en)在编译模型时无法验证其正确性。

程序员可以通过modelinfo->GetModelKeyValueText(GetModel())KeyValues(en)类访问$keyvalues块。

语法

$keyvalues
{
    键值数据
}

常用键值

完整列表请参见QC键值分类(en)

prop_data(en)
道具数据, 为模型定义各种属性,用于Valve的prop_*实体(通常是物理道具(en))。
physgun_interactions(en)
重力枪交互, 定义与重力枪(en)的非标准交互方式。
particles(en)
粒子效果, 附加粒子系统(en)
door_options(en)
门选项, 配置模型以用于旋转门(en)实体。
vehicle_entry
定义玩家进入载具(en)的位置,玩家的摄像机将混合到载具的摄像机位置(eyes)。由附着点(en)定义,并带有数字表示碰撞箱组,该组先前在名为"entryboxes"的碰撞箱组(en)中的任何碰撞箱上设置。
vehicle_exit
定义玩家离开载具的位置。由附着点名称定义,并指定是在载具直立("upright")还是倒置("upsidedown")时使用。
vehicle_escape_exit
定义在出现问题(水下、倒置等)时玩家离开载具的位置。定义方式与vehicle_exit相同。
AddedAmbientScale <整数(en)>
减轻此模型接收的环境光照。出现在L4D2的感染者模型中。

示例

$keyvalues
{
	prop_data(en)
	{
		base              Wooden.Small
		dmg.bullets       0
		explosive_damage  100
		explosive_radius  100
	}
	physgun_interactions(en)
	{
		onfirstimpact 	break
		onfirstimpact 	paintsplat
		onlaunch 	spin_zaxis
		onbreak 	explode_fire
	}

	// hud_name是作为自定义单维键值的示例虚构的
	// (如果严格要求,你可能会指出它应该被本地化(en)...) 

	hud_name "Rubber chicken with a pulley in the middle"
}


$keyvalues
{
 vehicle_entry
 {
  "enter1" "1"
  "enter2" "2"
  "enter3" "3"
  "enter4" "1"
  "enter5" "2"
  "enter6" "3"
  "enter7" "1"
 }
 vehicle_exit
 {
  "exit3" "upright"
  "exit4" "upright"
  "exit6" "upsidedown"
 }
 vehicle_escape_exit
 {
  "exit1" "upright"
  "exit2" "upright"
  "exit5" "upsidedown"
  "exit7" "upright"
  "exit8" "upsidedown"
 }
}