當前位置: 首頁>>代碼示例>>TypeScript>>正文


TypeScript connection.sendUTF方法代碼示例

本文整理匯總了TypeScript中websocket.connection.sendUTF方法的典型用法代碼示例。如果您正苦於以下問題:TypeScript connection.sendUTF方法的具體用法?TypeScript connection.sendUTF怎麽用?TypeScript connection.sendUTF使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在websocket.connection的用法示例。


在下文中一共展示了connection.sendUTF方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。

示例1: sendJoueurs

 function sendJoueurs(con?: WebsocketConnection) {
     if (!con) {
         return;
     }
     con.sendUTF(JSON.stringify(
         ServerResponses.makeJoueurJoint(getNomJoueurs(), joueurAttendant.map(j => j.guid), chatAttendant)));
 }
開發者ID:AsamK,項目名稱:Tarot,代碼行數:7,代碼來源:Orga.ts

示例2: return

    return (m: Action) => {
        if (jeu && jeu.invalid) {
            jeu = null;
            moi = null;
        }
        switch (m.type) {
            case Actions.JOINDRE: {
                if (joueurAttendant.length >= 5) {
                    console.warn('too many players');
                    // TODO error
                    return;
                }

                const nomJoueur = m.nomJoueur.substring(0, 50).replace(/,/g, ' ');
                if (joueurAttendant.findIndex(j => j.nomJoueur === nomJoueur) !== -1) {
                    console.warn('player name already exists');
                    // TODO error
                    return;
                }
                const newGuid = m.guid;
                joueurAttendant.push({
                    connection,
                    guid: newGuid,
                    nomJoueur,
                    startCallback: () => {
                        jeu = knownGuids[newGuid].jeu;
                        moi = joueurAttendant.findIndex(j => j.guid === newGuid);
                    },
                });
                guid = newGuid;
                joueurAttendant.forEach(({connection: joueurConnection}) => sendJoueurs(joueurConnection));
                break;
            }
            case Actions.REJOINDRE: {
                const index = joueurAttendant.findIndex(j => j.guid === m.guid);
                if (index !== -1) {
                    const newGuid = m.guid;
                    joueurAttendant[index].connection = connection;
                    joueurAttendant[index].startCallback = () => {
                        jeu = knownGuids[newGuid].jeu;
                        moi = joueurAttendant.findIndex(j => j.guid === newGuid);
                    };
                    guid = newGuid;
                    sendJoueurs(connection);
                } else if (m.guid in knownGuids) {
                    guid = m.guid;
                    moi = knownGuids[guid].joueur;
                    jeu = knownGuids[guid].jeu;
                    jeu.connections[moi] = connection;
                    connection.sendUTF(JSON.stringify(ServerResponses.makeRejoindu(moi)));
                    sendToAll(jeu);
                } else {
                    // TODO error
                    return;
                }
                break;
            }
            case Actions.QUITTER: {
                const index = joueurAttendant.findIndex(j => j.guid === guid);
                if (index === -1) {
                    return;
                }
                joueurAttendant.splice(index, 1);
                joueurAttendant.forEach(({connection: joueurConnection}) => sendJoueurs(joueurConnection));
                sendJoueurs(connection);
                break;
            }
            case Actions.START:
                if (joueurAttendant.length < 3) {
                    console.warn('not enough player');
                    // TODO error
                    return;
                }
                const newJeu = Jeu.creeNouveauJeu(getNomJoueurs());
                jeux.push(newJeu);
                joueurAttendant.forEach(({guid: joueurGuid, connection: joueurConnection}, i) => {
                    knownGuids[joueurGuid] = {jeu: newJeu, joueur: i};
                    if (joueurConnection != null) {
                        newJeu.connections[i] = joueurConnection;
                    }
                    newJeu.guids.push(joueurGuid);
                });
                joueurAttendant.forEach(({startCallback}, i) => {
                    if (startCallback != null) {
                        startCallback();
                    }
                });
                joueurAttendant = [];
                newJeu.data.chat = chatAttendant;
                chatAttendant = '';
                sendToAll(newJeu);
                jeu = newJeu;
                break;
            case Actions.COUPE:
                if (!jeu) {
                    console.warn('Action non permis, jeu pas commencé');
                    return;
                }
                jeu.coupe(m.nombre);
                sendToAll(jeu);
//.........這裏部分代碼省略.........
開發者ID:AsamK,項目名稱:Tarot,代碼行數:101,代碼來源:Orga.ts


注:本文中的websocket.connection.sendUTF方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。