Skip to content

Commit

Permalink
Merge remote-tracking branch 'upstream/main' into mixtapemenu_matchma…
Browse files Browse the repository at this point in the history
…king
  • Loading branch information
Zanieon committed Nov 29, 2024
2 parents ad59e1a + c3c2535 commit 76db686
Show file tree
Hide file tree
Showing 4 changed files with 65 additions and 35 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@
"PRIVATE_MATCH_SINGLEPLAYER_LEVEL" "%s1 (Одиночная игра)"

// fra hint for private match menu, because fra only has PL_fra_desc in vanilla
"PL_fra_hint" "Ты один. Уничтожь противников, чтобы победить. Собери 3 батареи для вызова титана."
"PL_fra_hint" "Все против всех. Уничтожай противников, чтобы победить. Собери 3 батареи для вызова титана."

// mode settings
"MODE_SETTING_CATEGORY_PILOT" "Пилот"
Expand All @@ -41,7 +41,7 @@
"MODE_SETTING_CATEGORY_MATCH" "Матч"

"classic_mp" "Классический мультиплеер"
"run_epilogue" "Показывать эпилог"
"run_epilogue" "Запускать эпилог"
"scorelimit" "Лимит очков"
"roundscorelimit" "Лимит очков (по раундам)"
"timelimit" "Лимит времени"
Expand Down Expand Up @@ -86,18 +86,18 @@
"PL_gg_abbr" "ГВ"
"GAMEMODE_GG" "Гонка вооружений"

"PL_tt" "Разборки Титанов"
"PL_tt_lobby" "Лобби разборок титанов"
"PL_tt_desc" "Зарабатывайте очки, пока вы находитесь в своём титане. Уничтожьте титана чтобы получить своего."
"PL_tt_hint" "Зарабатывайте очки, пока вы находитесь в своём титане. Уничтожьте титана чтобы получить своего."
"PL_tt_abbr" "TT"
"GAMEMODE_TT" "Разборки титанов"
"PL_tt" "Салочки"
"PL_tt_lobby" "Лобби салочек"
"PL_tt_desc" "Зарабатывайте очки будучи в титане. Уничтожьте титана чтобы получить собственного."
"PL_tt_hint" "Зарабатывайте очки будучи в титане. Уничтожьте титана чтобы получить собственного."
"PL_tt_abbr" "СЛ"
"GAMEMODE_TT" "Салочки"

"PL_inf" "Заражение"
"PL_inf_lobby" "Лобби Заражения"
"PL_inf_desc" "Переживите инфекцию. Выжившие становятся заражёнными при убийстве."
"PL_inf_hint" "Переживите инфекцию. Выжившие становятся заражёнными при убийстве."
"PL_inf_abbr" "INF"
"PL_inf_abbr" "ЗРЖ"
"GAMEMODE_INF" "Заражение"
"INFECTION_YOU_ARE_INFECTED" "Вас заразили!"
"INFECTION_KILL_SURVIVORS" "Заразите всех оставшихся выживших."
Expand All @@ -111,7 +111,7 @@
"PL_hs_lobby" "Лобби пряток"
"PL_hs_desc" "Игра со стандартными правилами пряток."
"PL_hs_hint" "Игра со стандартными правилами пряток."
"PL_hs_abbr" "HS"
"PL_hs_abbr" "ПРЯТ"
"GAMEMODE_hs" "Прятки"
"HIDEANDSEEK_YOU_ARE_SEEKER" "ВЫ ИЩЕТЕ"
"HIDEANDSEEK_SEEKER_DESC" "Найдите прячущихся и ударьте их.\nВы появитесь через %s1 секунд(у)"
Expand Down Expand Up @@ -280,7 +280,7 @@
"NO_RESULTS" "Нет результатов."
"NO_MODS" "Нечего настраивать! Загрузите моды с ^5588FF00northstar.thunderstore.io^0."
"respawnprotection" "Длит. защиты после возрождения"
"SNS_BANKRUPT_SUB" "Вас обнулил %s1"
"SNS_BANKRUPT_SUB" "Ваши очки сбросил %s1"
"PL_hidden" "Невидимка"
"PL_hidden_lobby" "Невидимка — лобби"
"GAMEMODE_HIDDEN" "Невидимка"
Expand All @@ -300,7 +300,7 @@
"PL_hidden_abbr" "НЕВИД"
"SCOREBOARD_BANKRUPTS" "Врагов обанкрочено"
"SNS_LEADER_BANKRUPT" "Лидер обанкрочен!"
"SNS_LEADER_BANKRUPT_SUB" "%s1 был обнулён игроком %s2"
"SNS_LEADER_BANKRUPT_SUB" "%s1 был сброшен игроком %s2"
"gg_kill_reward" "Множитель награды за убийство"
"gg_execution_reward" "Множитель награды за казнь"
"PL_tffa" "Все против всех на титанах"
Expand All @@ -322,8 +322,8 @@
"GAMEMODE_TFFA" "Все против всех на титанах"
"SHOW_ONLY_DISABLED" "Только выключенные"
"HIDE_LOCKED" "Скрыть недоступные"
"PL_chamber_desc" "Один выстрел — один труп. Заработайте ещё один патрон, убив врага первым."
"PL_chamber_hint" "Один выстрел — один труп. Заработайте ещё один патрон, убив врага первым."
"PL_chamber_desc" "Один выстрел — один труп. Один труп — ещё один выстрел."
"PL_chamber_hint" "Один выстрел — один труп. Один труп — ещё один выстрел."
"PL_hidden_desc" "Один из игроков невидим."
"PL_tffa_hint" "Каждый пилот сам за себя. Уничтожьте всех вражеских титанов."
"sns_softball_kill_value" "Очков за убийство Софтболом"
Expand Down Expand Up @@ -374,5 +374,9 @@
"MODE_MENU_UNKNOWN" "Неизвестный"
"MODE_MENU_SWITCH" "Фильтр"
"MODE_MENU_TITAN_ONLY" "Только титаны"
"TEAMSWITCH_BUFFER" "Нельзя сменять команду так часто"
"TEAMSWITCH_GAMEMODE" "Невозможно сменить команду в текущем режиме игры"
"TEAMSWITCH_DISABLED" "Нельзя сменить команду в текущем режиме игры"
"TEAMSWITCH_GAMEPLAY" "Команду можно сменять только в игровой стадии"
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -366,7 +366,7 @@ void function DamageIndicators( DamageHistoryStruct damageHistory, bool playerIs
cockpit.AddToTitanHudDamageHistory( COCKPIT_PANEL_LEFT, damageHistory.damage )
}

if ( damageHistory.attacker && damageHistory.attacker.GetParent() == localViewPlayer )
if ( damageHistory.damageSourceId != eDamageSourceId.mp_weapon_arc_launcher && damageHistory.attacker && damageHistory.attacker.GetParent() == localViewPlayer )
{
damageHistory.rodeoDamage = true
return
Expand Down
61 changes: 42 additions & 19 deletions Northstar.Custom/mod/scripts/vscripts/weapons/sh_stim.gnut
Original file line number Diff line number Diff line change
Expand Up @@ -40,20 +40,23 @@ void function StimPlayer( entity player, float duration, float severity = STIM_E

void function StimPlayer_Internal( entity player, float duration, float effectSeverity )
{
int endlessStatusEffectHandle = 0
// Handles for tracking status effects
int statusEffectHandle_SpeedBoost = 0
int statusEffectHandle_StimVFX = 0
if ( duration == USE_TIME_INFINITE )
{
endlessStatusEffectHandle = StatusEffect_AddEndless( player, eStatusEffect.speed_boost, effectSeverity )
statusEffectHandle_SpeedBoost = StatusEffect_AddEndless( player, eStatusEffect.speed_boost, effectSeverity )
statusEffectHandle_StimVFX = StatusEffect_AddEndless( player, eStatusEffect.stim_visual_effect, 1.0 )
}
else
{
StatusEffect_AddTimed( player, eStatusEffect.speed_boost, effectSeverity, duration + 0.5, 0.25 ) // sound is slightly off
StatusEffect_AddTimed( player, eStatusEffect.stim_visual_effect, 1.0, duration, duration )
statusEffectHandle_SpeedBoost = StatusEffect_AddTimed( player, eStatusEffect.speed_boost, effectSeverity, duration + 0.5, 0.25 ) // sound is slightly off
statusEffectHandle_StimVFX = StatusEffect_AddTimed( player, eStatusEffect.stim_visual_effect, 1.0, duration, duration )
}

#if SERVER
thread StimThink( player, duration, endlessStatusEffectHandle )
#else
thread StimThink( player, duration, statusEffectHandle_SpeedBoost, statusEffectHandle_StimVFX )
#else // CLIENT
entity cockpit = player.GetCockpit()
if ( !IsValid( cockpit ) )
return
Expand All @@ -63,15 +66,25 @@ void function StimPlayer_Internal( entity player, float duration, float effectSe
}

#if SERVER
void function StimThink( entity player, float duration, int endlessStatusEffectHandle )
void function StimThink( entity player, float duration, int statusEffectHandle_SpeedBoost, int statusEffectHandle_StimVFX )
{
player.EndSignal( "OnDeath" )
player.EndSignal( "OnChangedPlayerClass" )
if ( endlessStatusEffectHandle != 0 )
player.EndSignal( "StopEndlessStim" )
player.EndSignal( "player_embarks_titan" ) // Prevent transferring active Stim ability to Titan.

EmitSoundOnEntityOnlyToPlayer( player, player, "pilot_stimpack_loop_1P" )
EmitSoundOnEntityExceptToPlayer( player, player, "pilot_stimpack_loop_3P" )
if ( duration == USE_TIME_INFINITE )
{
player.EndSignal( "StopEndlessStim" )
// TF|2 stim loop sounds don't actually loop, use TF|1 loop sound.
// TF|1 sound is very quiet, is there a way to boost its volume (it has 300% volume in TF|1), except playing 3 sounds at once?
// BUG: It still stops playing sometimes for whatever reason ( Too many sounds? )
EmitSoundOnEntity( player, "Pilot_Stimpack_Loop" )
}
else
{
EmitSoundOnEntityOnlyToPlayer( player, player, "pilot_stimpack_loop_1P" )
EmitSoundOnEntityExceptToPlayer( player, player, "pilot_stimpack_loop_3P" )
}

int attachmentIndex = player.LookupAttachment( "CHESTFOCUS" )

Expand All @@ -82,19 +95,29 @@ void function StimThink( entity player, float duration, int endlessStatusEffectH
//thread StimSlowmoAim( player, duration )

OnThreadEnd(
function() : ( player, stimFX, endlessStatusEffectHandle )
function() : ( player, duration, stimFX, statusEffectHandle_SpeedBoost, statusEffectHandle_StimVFX )
{
if ( !IsValid( player ) )
return

if ( IsValid( stimFX ) )
EffectStop( stimFX )

StopSoundOnEntity( player, "pilot_stimpack_loop_1P" )
StopSoundOnEntity( player, "pilot_stimpack_loop_3P" )

if ( endlessStatusEffectHandle != 0 )
StatusEffect_Stop( player, endlessStatusEffectHandle )
if ( duration == USE_TIME_INFINITE )
{
StopSoundOnEntity( player, "Pilot_Stimpack_Loop" )
}
else
{
StopSoundOnEntity( player, "pilot_stimpack_loop_1P" )
StopSoundOnEntity( player, "pilot_stimpack_loop_3P" )
}

if ( statusEffectHandle_SpeedBoost != 0 )
StatusEffect_Stop( player, statusEffectHandle_SpeedBoost )

if ( statusEffectHandle_StimVFX != 0 )
StatusEffect_Stop( player, statusEffectHandle_StimVFX )

player.Signal( "EndStim" )
}
Expand All @@ -111,7 +134,7 @@ void function StimThink( entity player, float duration, int endlessStatusEffectH
wait 2.0
}

#else // #if SERVER
#else // CLIENT
void function StimVisualsEnabled( entity ent, int statusEffect, bool actuallyChanged )
{
if ( ent != GetLocalViewPlayer() )
Expand Down Expand Up @@ -164,4 +187,4 @@ void function StimScreenFXThink( entity player, int fxHandle, entity cockpit )
}
}

#endif // #else // #if SERVER
#endif
Original file line number Diff line number Diff line change
Expand Up @@ -103,8 +103,11 @@ WeaponData
"charge_effect_1p" "wpn_arc_cannon_charge_fp"
"charge_effect_3p" "wpn_arc_cannon_charge"
"charge_effect_attachment" "muzzle_flash"
"charge_effect2_1p" "wpn_ARC_knob_FP"
"charge_effect2_3p" "wpn_ARC_knob"
"charge_effect2_attachment" "SPINNING_KNOB"


"charge_effect_show_during_drain" "0"

// Spread
"spread_stand_hip" "10"
Expand Down

0 comments on commit 76db686

Please sign in to comment.