Add rank, friends, fishing, and camp treasure with T2 studio models and skill presentation.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
udx
2026-10-21 23:01:31 +08:00
co-authored by Cursor
parent 89e0fa246f
commit 079313fb06
677 changed files with 395371 additions and 9692 deletions
@@ -54,16 +54,16 @@ namespace HotUpdate.Gameplay
_paused = paused;
}
public void Play(PrototypeBattle.CombatCue cue)
public void Play(PrototypeBattle.CombatCue cue,bool sound=true)
{
if (_paused || _effects == null) return;
int index = cue.Kind == PrototypeBattle.CueKind.EnemyAttack ? Mathf.Clamp(cue.Type, 0, 4) : (cue.Type >= 2 ? 6 : 5);
Burst(index, cue.Kind == PrototypeBattle.CueKind.EnemyAttack ? cue.AttackPosition : cue.Position, cue.Direction);
Burst(index, cue.Kind == PrototypeBattle.CueKind.EnemyAttack ? cue.AttackPosition : cue.Position, cue.Direction,sound);
if (cue.Kind == PrototypeBattle.CueKind.EnemyAttack)
Burst(cue.Shield ? 7 : 5, cue.Position, -cue.Direction);
Burst(cue.Shield ? 7 : 5, cue.Position, -cue.Direction,sound);
}
void Burst(int index, Vector3 position, Vector3 direction)
void Burst(int index, Vector3 position, Vector3 direction,bool sound)
{
var pool = _effects[index];
var ps = pool.instances[pool.next++ % pool.instances.Length];
@@ -73,7 +73,7 @@ namespace HotUpdate.Gameplay
foreach (var child in ps.GetComponentsInChildren<ParticleSystem>()) { var m = child.main; m.simulationSpeed = _speed; }
ps.Play(true); PlayedEffects++;
// Mix budget and same-cue guard prevent a wave of hits becoming a wall of sound.
if (!PrototypeClientPrefs.Sfx || Time.unscaledTime - _lastSound[index] < .075f) return;
if (!sound || !PrototypeClientPrefs.Sfx || Time.unscaledTime - _lastSound[index] < .075f) return;
_lastSound[index] = Time.unscaledTime;
var voice = _voices[_voice++ % _voices.Length]; voice.Stop(); voice.clip = _clips[index]; voice.Play(); PlayedSounds++;
int active = 0; foreach (var v in _voices) if (v.isPlaying) active++;