forked from phenom/healer-man
Update Healer Man server
This commit is contained in:
1 parent
9c5fb4c614
commit
bd073fb00f
113 files changed
+4902
-273
No files matched your search
@@ -51,7 +51,7 @@ import {
|
||||
} from "./originalCombatMeshRuntime";
|
||||
import { combatEffectTargetVisualSize, updateCombatEffectAnchorPosition } from "./combatEffectAnchorRegistry";
|
||||
import {
|
||||
projectileTravelDurationMs, risingTideImpactPlacement, shouldUseGeneratedOriginalFallback,
|
||||
combatEffectVisualTuning, projectileTravelDurationMs, risingTideImpactPlacement, shouldUseGeneratedOriginalFallback,
|
||||
} from "./combatEffectRuntime";
|
||||
import { OriginalWowModel } from "./OriginalWowModel";
|
||||
import { OriginalParticleGeometry } from "./OriginalParticleGeometry";
|
||||
@@ -329,6 +329,7 @@ export const OriginalParticleEmitter = memo(function OriginalParticleEmitter({
|
||||
modelGraph,
|
||||
sourceTextures,
|
||||
timelineRef,
|
||||
opacity = 1,
|
||||
}: {
|
||||
readonly graph: OriginalCombatEffectGraph;
|
||||
readonly particle: OriginalCombatEffectParticle;
|
||||
@@ -341,6 +342,7 @@ export const OriginalParticleEmitter = memo(function OriginalParticleEmitter({
|
||||
readonly modelGraph?: OriginalWowModelGraph;
|
||||
readonly sourceTextures?: ReadonlyMap<string, Texture>;
|
||||
readonly timelineRef?: MutableRefObject<number>;
|
||||
readonly opacity?: number;
|
||||
}) {
|
||||
const elapsedRef = useRef(0);
|
||||
const sourcePose = useMemo(() => ({
|
||||
@@ -485,7 +487,7 @@ export const OriginalParticleEmitter = memo(function OriginalParticleEmitter({
|
||||
const scaleVariation = 1 + (sourceRandom(cycleSeed + 8) * 2 - 1)
|
||||
* (particle.scaleVariation[0] + particle.scaleVariation[1]) * 0.5;
|
||||
colors.setXYZ(index, color[0] / 255, color[1] / 255, color[2] / 255);
|
||||
alphas.setX(index, Math.min(1, Math.max(0, alpha / 32_767)));
|
||||
alphas.setX(index, Math.min(1, Math.max(0, alpha / 32_767)) * opacity);
|
||||
sizes.setX(index, Math.max(0.002, (scale[0] + scale[1]) * 0.5 * Math.max(0.05, scaleVariation)));
|
||||
const frameSamples = particle.samples.headCell.length
|
||||
? particle.samples.headCell
|
||||
@@ -729,6 +731,7 @@ function LoadedOriginalCombatEffect({
|
||||
? event.origin
|
||||
: event.targetPosition ?? event.origin;
|
||||
const loopTimeline = event.phase === "cast-start" || event.phase === "aura-start";
|
||||
const tuning = combatEffectVisualTuning(event);
|
||||
|
||||
useFrame((_state, delta) => {
|
||||
if (!active || doneRef.current) return;
|
||||
@@ -796,7 +799,7 @@ function LoadedOriginalCombatEffect({
|
||||
&& item.asset.model?.toLowerCase() === "model/fx/skill/ice/act_riptide_t_freeze_hit.ros"
|
||||
? risingTideImpactPlacement(event, combatEffectTargetVisualSize(event.targetActorId))
|
||||
: null;
|
||||
const scale = effectScale(item.asset) * (risingTideTarget?.scale ?? 1);
|
||||
const scale = effectScale(item.asset) * (risingTideTarget?.scale ?? 1) * tuning.scale;
|
||||
return (
|
||||
<group
|
||||
key={`${item.asset.effectGraphUrl}:${item.asset.model ?? "model"}`}
|
||||
@@ -806,7 +809,7 @@ function LoadedOriginalCombatEffect({
|
||||
scale={scale}
|
||||
>
|
||||
{graph.kind === "wow-m2-model" && <OriginalWowModel graph={graph} textures={item.textures}
|
||||
active={active} playbackRef={staticMeshPlaybackRef} loop={loopTimeline} />}
|
||||
active={active} playbackRef={staticMeshPlaybackRef} loop={loopTimeline} opacity={tuning.opacity} />}
|
||||
{graph.kind === "runewaker-ros-particle-archive" ? (
|
||||
<RunewakerParticleEffect graph={graph} textures={item.sourceTextures}
|
||||
phase={event.phase} quality={quality} active={active} eventId={event.id}
|
||||
@@ -835,6 +838,7 @@ function LoadedOriginalCombatEffect({
|
||||
eventId={event.id}
|
||||
emitterIndex={loadedIndex * 4_096 + particleIndex}
|
||||
loopTimeline={loopTimeline}
|
||||
opacity={tuning.opacity}
|
||||
/>
|
||||
) : null;
|
||||
})}
|
||||
|
||||
Reference in new issue
Block a user