Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

Ignore:
Timestamp:
Jun 14, 2011, 8:04:44 PM (13 years ago)
Author:
dafrick
Message:

The calling of tthe docking dialog is now synchronized (but not the docking).

File:
1 edited

Legend:

Unmodified
Added
Removed
  • code/branches/presentation/src/modules/docking/Dock.cc

    r8700 r8705  
    3737#include "core/LuaState.h"
    3838#include "core/GUIManager.h"
     39#include "core/command/ConsoleCommand.h"
     40#include "network/NetworkFunction.h"
     41
    3942#include "infos/HumanPlayer.h"
     43#include "interfaces/PlayerTrigger.h"
    4044#include "worldentities/pawns/Pawn.h"
    41 #include "interfaces/PlayerTrigger.h"
    42 #include "core/command/ConsoleCommand.h"
    4345
    4446#include "ToluaBindDocking.h"
     
    5355    SetConsoleCommand("Dock", "dock",    &Dock::cmdDock).addShortcut().setAsInputCommand();
    5456    SetConsoleCommand("Dock", "undock",  &Dock::cmdUndock).addShortcut().setAsInputCommand();
     57
     58    registerStaticNetworkFunction(Dock::showDockingDialog);
    5559
    5660    Dock::Dock(BaseObject* creator) : StaticEntity(creator)
     
    110114
    111115            // Show docking dialog
    112             GUIManager::showGUI("DockingDialog");
     116            this->showDockingDialogHelper(player);
    113117        }
    114118        else
     
    119123
    120124        return true;
     125    }
     126
     127    void Dock::showDockingDialogHelper(PlayerInfo* player)
     128    {
     129        assert(player);
     130       
     131        if(!player->isHumanPlayer())
     132            return;
     133       
     134        if(GameMode::isMaster())
     135        {
     136            if(GameMode::showsGraphics())
     137                GUIManager::showGUI("DockingDialog");
     138        }
     139        else
     140            callStaticNetworkFunction(Dock::showDockingDialog, player->getClientID());
     141
     142    }
     143
     144    /*static*/ void Dock::showDockingDialog()
     145    {
     146        if(GameMode::showsGraphics())
     147            GUIManager::showGUI("DockingDialog");
    121148    }
    122149
Note: See TracChangeset for help on using the changeset viewer.