hehe trisync
This commit is contained in:
parent
ccf431d382
commit
67b09a864a
1 changed files with 57 additions and 24 deletions
|
|
@ -100,6 +100,16 @@
|
||||||
let showAddFromTAPoolPopup: boolean = false;
|
let showAddFromTAPoolPopup: boolean = false;
|
||||||
let allowAddFromTAPool: boolean = true;
|
let allowAddFromTAPool: boolean = true;
|
||||||
|
|
||||||
|
interface PlayerModState {
|
||||||
|
platformId: string;
|
||||||
|
isColorSwitched: boolean;
|
||||||
|
isHandSwitched: boolean;
|
||||||
|
isBlueDisabled: boolean;
|
||||||
|
isRedDisabled: boolean;
|
||||||
|
}
|
||||||
|
|
||||||
|
let playerModificationStates: PlayerModState[] = []
|
||||||
|
|
||||||
// User editing state
|
// User editing state
|
||||||
let isModifyGameplayPopupVisible: boolean = false;
|
let isModifyGameplayPopupVisible: boolean = false;
|
||||||
let editingPlayerPlatformId: string, editingPlayerName: string, editingPlayerPfp: string = "";
|
let editingPlayerPlatformId: string, editingPlayerName: string, editingPlayerPfp: string = "";
|
||||||
|
|
@ -817,35 +827,59 @@
|
||||||
try {
|
try {
|
||||||
const results: any[] = [];
|
const results: any[] = [];
|
||||||
|
|
||||||
// Helper function to check if a specific modifier is enabled
|
|
||||||
const isModifierEnabled = (modifier: Command_ModifyGameplay_Modifier): boolean => {
|
const isModifierEnabled = (modifier: Command_ModifyGameplay_Modifier): boolean => {
|
||||||
return (modifiers & (1 << modifier)) !== 0;
|
return (modifiers & (1 << modifier)) !== 0;
|
||||||
};
|
};
|
||||||
|
|
||||||
// Apply each modifier if enabled
|
let flipColorUserIds: string[] = [];
|
||||||
if (isModifierEnabled(Command_ModifyGameplay_Modifier.InvertColors)) {
|
let flipHandUserIds: string[] = [];
|
||||||
console.log('Inverting colors for users:', userIds);
|
let flipBlueUserIds: string[] = [];
|
||||||
const response = await client.flipColors(tournamentGuid, userIds);
|
let flipRedUserIds: string[] = [];
|
||||||
results.push({ type: 'InvertColors', response });
|
|
||||||
}
|
|
||||||
|
|
||||||
if (isModifierEnabled(Command_ModifyGameplay_Modifier.InvertHandedness)) {
|
await Promise.all(userIds.map(userId => {
|
||||||
console.log('Inverting handedness for users:', userIds);
|
const userObject = playerModificationStates.find(x => x.platformId == userId);
|
||||||
const response = await client.flipHands(tournamentGuid, userIds);
|
if(!userObject) {
|
||||||
results.push({ type: 'InvertHandedness', response });
|
if(isModifierEnabled(Command_ModifyGameplay_Modifier.InvertColors)) flipColorUserIds = [...flipColorUserIds, userId];
|
||||||
}
|
if(isModifierEnabled(Command_ModifyGameplay_Modifier.InvertHandedness)) flipHandUserIds = [...flipHandUserIds, userId];
|
||||||
|
if(isModifierEnabled(Command_ModifyGameplay_Modifier.DisableBlueNotes)) flipBlueUserIds = [...flipBlueUserIds, userId];
|
||||||
|
if(isModifierEnabled(Command_ModifyGameplay_Modifier.DisableRedNotes)) flipRedUserIds = [...flipRedUserIds, userId];
|
||||||
|
playerModificationStates = [...playerModificationStates, {
|
||||||
|
platformId: userId,
|
||||||
|
isColorSwitched: isModifierEnabled(Command_ModifyGameplay_Modifier.InvertColors),
|
||||||
|
isHandSwitched: isModifierEnabled(Command_ModifyGameplay_Modifier.InvertHandedness),
|
||||||
|
isBlueDisabled: isModifierEnabled(Command_ModifyGameplay_Modifier.DisableBlueNotes),
|
||||||
|
isRedDisabled: isModifierEnabled(Command_ModifyGameplay_Modifier.DisableRedNotes)
|
||||||
|
}];
|
||||||
|
} else {
|
||||||
|
if(isModifierEnabled(Command_ModifyGameplay_Modifier.InvertColors) !== userObject.isColorSwitched) flipColorUserIds = [...flipColorUserIds, userId];
|
||||||
|
if(isModifierEnabled(Command_ModifyGameplay_Modifier.InvertHandedness) !== userObject.isHandSwitched) flipHandUserIds = [...flipHandUserIds, userId];
|
||||||
|
if(isModifierEnabled(Command_ModifyGameplay_Modifier.DisableBlueNotes) !== userObject.isBlueDisabled) flipBlueUserIds = [...flipBlueUserIds, userId];
|
||||||
|
if(isModifierEnabled(Command_ModifyGameplay_Modifier.DisableRedNotes) !== userObject.isRedDisabled) flipRedUserIds = [...flipRedUserIds, userId];
|
||||||
|
playerModificationStates = [...playerModificationStates.filter(x => x.platformId != userId), {
|
||||||
|
platformId: userId,
|
||||||
|
isColorSwitched: !userObject.isColorSwitched,
|
||||||
|
isHandSwitched: !userObject.isHandSwitched,
|
||||||
|
isBlueDisabled: !userObject.isBlueDisabled,
|
||||||
|
isRedDisabled: !userObject.isRedDisabled
|
||||||
|
}];
|
||||||
|
}
|
||||||
|
}));
|
||||||
|
|
||||||
if (isModifierEnabled(Command_ModifyGameplay_Modifier.DisableBlueNotes)) {
|
console.log('Inverting colors for users:', flipColorUserIds);
|
||||||
console.log('Disabling blue notes for users:', userIds);
|
const response1 = await client.flipColors(tournamentGuid, flipColorUserIds);
|
||||||
const response = await client.disableBlueNotes(tournamentGuid, userIds);
|
results.push({ type: 'InvertColors', response1 });
|
||||||
results.push({ type: 'DisableBlueNotes', response });
|
|
||||||
}
|
|
||||||
|
|
||||||
if (isModifierEnabled(Command_ModifyGameplay_Modifier.DisableRedNotes)) {
|
console.log('Inverting handedness for users:', flipHandUserIds);
|
||||||
console.log('Disabling red notes for users:', userIds);
|
const response2 = await client.flipHands(tournamentGuid, flipHandUserIds);
|
||||||
const response = await client.disableRedNotes(tournamentGuid, userIds);
|
results.push({ type: 'InvertHandedness', response2 });
|
||||||
results.push({ type: 'DisableRedNotes', response });
|
|
||||||
}
|
console.log('Disabling blue notes for users:', flipBlueUserIds);
|
||||||
|
const response3 = await client.disableBlueNotes(tournamentGuid, flipBlueUserIds);
|
||||||
|
results.push({ type: 'DisableBlueNotes', response3 });
|
||||||
|
|
||||||
|
console.log('Disabling red notes for users:', flipRedUserIds);
|
||||||
|
const response4 = await client.disableRedNotes(tournamentGuid, flipRedUserIds);
|
||||||
|
results.push({ type: 'DisableRedNotes', response4 });
|
||||||
|
|
||||||
console.log(`Applied ${results.length} modifiers successfully`);
|
console.log(`Applied ${results.length} modifiers successfully`);
|
||||||
console.log("Modifier apply res", results);
|
console.log("Modifier apply res", results);
|
||||||
|
|
@ -867,8 +901,7 @@
|
||||||
async function handleSendModifyGameplay(event: CustomEvent) {
|
async function handleSendModifyGameplay(event: CustomEvent) {
|
||||||
const { platformId, modifiers } = event.detail;
|
const { platformId, modifiers } = event.detail;
|
||||||
|
|
||||||
// Convert platformId to userIds array if needed
|
const userIds = [platformId];
|
||||||
const userIds = [platformId]; // or however you map platform ID to user IDs
|
|
||||||
|
|
||||||
await handleSetGameplayModifiersForUsersVerbose(userIds, modifiers);
|
await handleSetGameplayModifiersForUsersVerbose(userIds, modifiers);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue