本文整理汇总了TypeScript中@csegames/camelot-unchained.events类的典型用法代码示例。如果您正苦于以下问题:TypeScript events类的具体用法?TypeScript events怎么用?TypeScript events使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了events类的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的TypeScript代码示例。
示例1: registerOtherPatcherHubEvents
function registerOtherPatcherHubEvents(dispatch: (action: ControllerAction) => any,
apiHost: string,
controllerState?: ControllerState) {
if (!window[PATCHER_HUB_WINDOW_ID] || !window[PATCHER_HUB_WINDOW_ID].hubs ||
!window[PATCHER_HUB_WINDOW_ID].eventListeners) return;
const characterUpdatedEvent = signalr.getPatcherEventName(apiHost, signalr.PATCHER_EVENTS_CHARACTERUPDATED);
window[PATCHER_HUB_WINDOW_ID].eventListeners[characterUpdatedEvent] =
events.on(characterUpdatedEvent, (characterJSON: string) => {
const character = utils.tryParseJSON<webAPI.SimpleCharacter>(characterJSON, client.debug);
if (character !== null) {
if (controllerState && isEqual(controllerState.characters[character.id], character)) {
// No need to update character if already equal to what we have in state.
return;
}
// Update character
dispatch(characterUpdate(character));
}
});
const characterRemovedEvent = signalr.getPatcherEventName(apiHost, signalr.PATCHER_EVENTS_CHARACTERREMOVED);
window[PATCHER_HUB_WINDOW_ID].eventListeners[characterRemovedEvent] =
events.on(signalr.getPatcherEventName(apiHost, signalr.PATCHER_EVENTS_CHARACTERREMOVED), (id: string) => {
dispatch(characterRemoved(id));
});
}
开发者ID:codecorsair,项目名称:Camelot-Unchained,代码行数:27,代码来源:controller.ts
示例2: setActiveWarbandID
export function setActiveWarbandID(id: string) {
const stateObjectID = getStateObject().id;
if (stateObjectID) {
events.fire('chat-leave-room', stateObjectID);
}
if (typeof id === 'string') {
events.fire('chat-show-room', id, 'Warband');
}
getStateObject().id = id;
getStateObject().membersMap = {};
getStateObject().membersEntityIDMap = {};
}
开发者ID:codecorsair,项目名称:Camelot-Unchained,代码行数:13,代码来源:warband.ts
示例3: registerPatcherHubEvents
// HELPER METHODS
function registerPatcherHubEvents(dispatch: (action: ControllerAction) => any) {
events.on(signalr.PATCHER_EVENTS_ALERT, (alertJSON: string) => {
const alert = utils.tryParseJSON<webAPI.PatcherAlert>(alertJSON, client.debug);
if (alert !== null) dispatch(alertReceived(alert));
});
events.on(signalr.PATCHER_EVENTS_SERVERUPDATED, (serverJSON: string) => {
const server = utils.tryParseJSON<webAPI.ServerModel>(serverJSON, client.debug);
if (server !== null) dispatch(serverUpdate(server));
});
events.on(signalr.PATCHER_EVENTS_SERVERUNAVAILABLE, (name: string) => dispatch(serverUnavailable(name)));
}
开发者ID:codecorsair,项目名称:Camelot-Unchained,代码行数:14,代码来源:controller.ts
示例4: initialize
export function initialize(dispatch: any) {
events.addListener(events.buildingEventTopics.handlesBlocks, (info: { materials: BuildingMaterial[] }) => {
const matsByType: MaterialsByType = new MaterialsByType(info.materials);
dispatch(setMaterialsByType(matsByType));
});
events.addListener(DEACTIVATE_MATERIAL_SELECTOR, (info: {}) => {
// dispatch(updateMaterialSelector(null, null));
});
events.addListener(ACTIVATE_MATERIAL_SELECTOR,
(info: { selection: BuildingMaterial, onSelect: (material: BuildingMaterial) => void }) => {
dispatch(updateMaterialSelector(info.selection, info.onSelect));
});
}
开发者ID:codecorsair,项目名称:Camelot-Unchained,代码行数:16,代码来源:materials-by-type.ts
示例5: return
return (dispatch: (action: any) => any) => {
dispatch(init());
window.onresize = () => {
if (window.innerWidth >= 640 && window.innerHeight >= 480) {
dispatch(resize());
}
};
// hook up to event triggers
events.on('hudnav--navigate', (name: string) => {
switch (name) {
case 'chat':
return dispatch(toggleVisibility(name));
case 'ui': return dispatch(toggleHUDLock(addEvent, removeEvent));
case 'lockui': return dispatch(lockHUD(removeEvent));
case 'reset': return dispatch(resetHUD());
default: return;
}
});
const listener = (e: KeyboardEvent) => {
if (e.which === 27) {
dispatch(lockHUD(removeEvent));
}
};
const addEvent = () => window.window.addEventListener('keydown', listener);
const removeEvent = () => window.window.removeEventListener('keydown', listener);
};
开发者ID:codecorsair,项目名称:Camelot-Unchained,代码行数:28,代码来源:layout.ts
示例6: initializeBuilding
export function initializeBuilding(dispatch: any) {
requester.loadMaterials();
events.addListener(events.buildingEventTopics.handlesBuildingMode, (info: { mode: buildUIMode }) => {
dispatch(setMode(info.mode));
});
}
开发者ID:codecorsair,项目名称:Camelot-Unchained,代码行数:8,代码来源:building.ts
示例7: unregisterOtherPatcherHubEvents
function unregisterOtherPatcherHubEvents(apiHost: string) {
if (
!window[PATCHER_HUB_WINDOW_ID] ||
!window[PATCHER_HUB_WINDOW_ID].hubs ||
!window[PATCHER_HUB_WINDOW_ID].eventListeners
) {
return;
}
const characterUpdatedEvent = signalr.getPatcherEventName(apiHost, signalr.PATCHER_EVENTS_CHARACTERUPDATED);
events.off(window[PATCHER_HUB_WINDOW_ID].eventListeners[characterUpdatedEvent]);
window[PATCHER_HUB_WINDOW_ID].hubs.eventListeners[characterUpdatedEvent] = null;
const characterRemovedEvent = signalr.getPatcherEventName(apiHost, signalr.PATCHER_EVENTS_CHARACTERREMOVED);
events.off(window[PATCHER_HUB_WINDOW_ID].eventListeners[characterRemovedEvent]);
window[PATCHER_HUB_WINDOW_ID].hubs.eventListeners[characterRemovedEvent] = null;
}
开发者ID:codecorsair,项目名称:Camelot-Unchained,代码行数:17,代码来源:controller.ts
示例8: initialize
export function initialize(dispatch: (action: any) => void) {
events.addListener(events.buildingEventTopics.handlesBlocks, (info: { materials: BuildingMaterial[] }) => {
const mats: BuildingMaterial[] = info.materials;
dispatch(setMaterials(mats));
dispatch(selectFromMaterial(mats[0]));
dispatch(selectToMaterial(mats[0]));
});
events.addListener(
events.buildingEventTopics.handlesBlockSelect, (info: { material: BuildingMaterial, block: BuildingBlock }) => {
dispatch(selectBlock(info.block));
dispatch(selectFromMaterial(info.material));
});
events.addListener(events.buildingEventTopics.handlesBuildingMode, (info: { mode: buildUIMode }) => {
dispatch(setBlockMode(info.mode === buildUIMode.BLOCKSELECTED));
});
}
开发者ID:codecorsair,项目名称:Camelot-Unchained,代码行数:20,代码来源:materials.ts
示例9: loadBlueprints
export function loadBlueprints(dispatch: (action: any) => void) {
events.addListener(events.buildingEventTopics.handlesBlueprints, (info: { blueprints: BuildingBlueprint[] }) => {
dispatch(updateBlueprints(info.blueprints));
});
events.addListener(events.buildingEventTopics.handlesBlueprintSelect, (info: { blueprint: BuildingBlueprint }) => {
dispatch(selectBlueprint(info.blueprint));
});
events.addListener(events.buildingEventTopics.handlesBuildingMode, (info: { mode: buildUIMode }) => {
dispatch(copyModeChanged(info.mode === buildUIMode.BLOCKSELECTED));
});
events.addListener(events.buildingEventTopics.handlesBlueprintCopy, () => {
dispatch(pasteModeChanged(true));
});
requester.requestBlueprints();
}
开发者ID:codecorsair,项目名称:Camelot-Unchained,代码行数:20,代码来源:blueprints.ts
示例10: showCompassTooltip
export function showCompassTooltip(tooltip: CompassTooltipData) {
events.fire('compass-tooltip--show', tooltip);
}
开发者ID:codecorsair,项目名称:Camelot-Unchained,代码行数:3,代码来源:compassTooltip.ts
注:本文中的@csegames/camelot-unchained.events类示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论