Difference between revisions of "Removing Fall Damage:ru"

From Valve Developer Community
Jump to: navigation, search
(Created page with "{{otherlang2 |title=Убираем урон от падения |en=Removing_Fall_Damage }} Данный туториал поможет вам предотвратить п...")
 
m
 
Line 44: Line 44:
  
 
[[Category:Programming:ru]]
 
[[Category:Programming:ru]]
[[Category:Free source code]]
+
[[Category:Free source code:ru]]
 
[[Category:Russian]]
 
[[Category:Russian]]

Latest revision as of 22:28, 6 January 2015

English

Данный туториал поможет вам предотвратить получение урона игроком от падения, если данная функция требуется в вашем моде. Убрать получение урона довольно просто. В этом туториале использован код Синглплеера SDK 2013, но он также может быть использован и для более ранних версий.

Изменение кода

Синглплеер 2013

1. Найдите Hl2_player.cpp в проекте сервера Server(game)/Source Files\HL2 DLL\Hl2_player.cpp который размещён по пути src/game/client/hl2/Hl2_player.cpp
2. Найдите это if условие там (строки 2294-2303)


// ignore fall damage if instructed to do so by input  
if ( ( info.GetDamageType() & DMG_FALL ) && m_flTimeIgnoreFallDamage > gpGlobals->curtime )  
{  
	// usually, we will reset the input flag after the first impact. However there is another input that  
	// prevents this behavior.  
	if ( m_bIgnoreFallDamageResetAfterImpact )  
	{  
		m_flTimeIgnoreFallDamage = 0;  
	}  
	return 0;  
}


3. Уберите, закомментируйте или приведите к следующему виду данный участок кода:


// Всегда игнорировать урон от падения
if ( info.GetDamageType() & DMG_FALL )
{
	return 0;
}


Пояснение
До этого урон от падения не наносился, если был установлен специальный cvar. Теперь урона от падения не будет всегда.