Ejemplo n.º 1
0
Frame::Frame() 
: wxFrame((wxFrame *)NULL, -1, "NetJoy", wxPoint(200,200), wxSize(500,800)) {
    SetIcon(wxIcon("NetJoy.ico"));

    SetupMenu();

        // Create main vertical sizer
    wxBoxSizer *main_vsizer = new wxBoxSizer(wxVERTICAL);
    SetSizer(main_vsizer);

        // Add a panel to main sizer
    wxPanel *panel = new wxPanel(this, wxID_ANY, wxDefaultPosition);
    main_vsizer->Add(panel, 0, wxEXPAND);

        // Add horizontal controls to panel
    wxBoxSizer *panel_hsizer = new wxBoxSizer(wxHORIZONTAL);
    panel->SetSizer(panel_hsizer);

    nic_choice = new wxChoice(panel, wxID_ANY);
    panel_hsizer->Add(nic_choice, 0, wxALL, 10);

    capture_button = new wxButton(panel, PANEL_CAPTURE, "Start");
    panel_hsizer->Add(capture_button, 0, wxALL, 10);
    
        // Add log message area to main sizer
    wxTextCtrl *logger_text_ctrl = new wxTextCtrl(this,wxID_ANY, "", wxDefaultPosition, wxDefaultSize, wxTE_MULTILINE | wxTE_READONLY);
    main_vsizer->Add(logger_text_ctrl, 1, wxEXPAND);

    capture_timer = new wxTimer(this, TIMER);

    SetupLogger(logger_text_ctrl);

    SetupNetInterface();
}
Ejemplo n.º 2
0
HRESULT hkPresent(IDXGISwapChain* thisptr, UINT SyncInterval, UINT Flags)
{
	HackCore.CheckPlayerLife();
	if (EspEnabled)
		HackCore.RenderFrame();
	if (NoRecoilEnabled)
		HackCore.NoRecoil();
	
	if ((GetAsyncKeyState(VK_RBUTTON) & 0x8000) && AimbotEnabled)
		HackCore.Aimbot();
	
	if (ShouldSetupMenu)
	{
		SetupMenu();
		ShouldSetupMenu = false;
	}
	
	if (EnableXPMod)
		HackCore.XPMod();
	
	if (ShowMenu)
	{
		GUIMngr->DrawElements();
	}
	GUIMngr->UpdateMouse();
	GUIMngr->UpdateWindowInfo("PVZ Garden Warfare");
	return oPresent(thisptr, SyncInterval, Flags);
}
Ejemplo n.º 3
0
	LRESULT MainWindow::OnCreate(WPARAM wParam, LPARAM lParam)
	{
		SetupMenu();
		TimerPtr = SetTimer(ThisWindow, IDT_STR_MOVE, TIMER_ELAPSE, NULL);

		PAINTSTRUCT ps;
		HDC hdc = BeginPaint(ThisWindow, &ps);
		GetTextExtentPoint(hdc, Title, lstrlen(Title), &TextSize);
		EndPaint(ThisWindow, &ps);
		CurTextOffset = -TextSize.cx;
		CalcTextRect();

		return 0;
	}
Ejemplo n.º 4
0
void CardState::Setup()
{
    kuko::IState::Setup();

    menuManager.LoadMenuScript( "menus/cards.lua" );for ( int i = 0; i < menuManager.AssetListSize(); i++ )
    {
        kuko::ImageManager::AddTexture( menuManager.AssetTitle( i ), menuManager.AssetPath( i ) );
    }
    menuManager.BuildMenu();
    m_r = 233; m_g = 120; m_b = 142;

    kuko::ImageManager::AddTexture( "red",      "content/gfx/bg-pattern-red.png" );
    kuko::ImageManager::AddTexture( "green",    "content/gfx/bg-pattern-green.png" );
    kuko::ImageManager::AddTexture( "blue",     "content/gfx/bg-pattern-blue.png" );
    kuko::ImageManager::AddTexture( "yellow",   "content/gfx/bg-pattern-yellow.png" );

    SetupMenu();
}
Ejemplo n.º 5
0
void CardState::Update()
{
    kuko::InputManager::Update();

    std::map<kuko::CommandButton, kuko::TriggerInfo> input = kuko::InputManager::GetTriggerInfo();
    int mouseX = input[ kuko::TAP ].actionX;
    int mouseY = input[ kuko::TAP ].actionY;

    if ( input[ kuko::TAP ].down )
    {
        if ( m_state == "menu" )
        {
            std::string clickedButton = menuManager.GetClickedButton( mouseX, mouseY );
            if ( clickedButton != "" )
            {
                kuko::UIButton* btn = menuManager.GetButton( clickedButton );
                kuko::IntRect frame = btn->GetFrame();
                SetupCard( clickedButton, frame );
            }
        }
        else
        {
            SetupMenu();
        }
    }

    // Scroll background
    for ( int i = 0; i < m_bgTiles.size(); i++ )
    {
        kuko::FloatRect pos = m_bgTiles[i].GetPosition();
        pos.x -= 0.1;
        pos.y -= 0.1;

        if ( int(pos.x) < -pos.w )
        {
            pos.x = kuko::Application::GetDefaultWidth();
        }
        if ( int(pos.y) < -pos.h )
        {
            pos.y = kuko::Application::GetDefaultHeight();
        }
        m_bgTiles[i].SetPosition( pos );
    }
}
Ejemplo n.º 6
0
void ChangeSettings(HWND hwndOwner) {
    PROPSHEETPAGE psp[sizeof(SettingsTabs) / sizeof(SETTINGS_TAB)];
    PROPSHEETPAGE BasicPsp[sizeof(SettingsTabsBasic) / sizeof(SETTINGS_TAB)];
    PROPSHEETHEADER psh;
	int count;

	for (count = 0; count < (sizeof(SettingsTabs) / sizeof(SETTINGS_TAB)); count ++) {
		psp[count].dwSize = sizeof(PROPSHEETPAGE);
		psp[count].dwFlags = PSP_USETITLE;
		psp[count].hInstance = hInst;
		psp[count].pszTemplate = MAKEINTRESOURCE(SettingsTabs[count].TemplateID);
		psp[count].pfnDlgProc = SettingsTabs[count].pfnDlgProc;
		psp[count].pszTitle = GS(SettingsTabs[count].LanguageID);
		psp[count].lParam = 0;
		psp[count].pfnCallback = NULL;
	}

	for (count = 0; count < (sizeof(SettingsTabsBasic) / sizeof(SETTINGS_TAB)); count ++) {
		BasicPsp[count].dwSize = sizeof(PROPSHEETPAGE);
		BasicPsp[count].dwFlags = PSP_USETITLE;
		BasicPsp[count].hInstance = hInst;
		BasicPsp[count].pszTemplate = MAKEINTRESOURCE(SettingsTabsBasic[count].TemplateID);
		BasicPsp[count].pfnDlgProc = SettingsTabsBasic[count].pfnDlgProc;
		BasicPsp[count].pszTitle = GS(SettingsTabsBasic[count].LanguageID);
		BasicPsp[count].lParam = 0;
		BasicPsp[count].pfnCallback = NULL;
	}

    psh.dwSize = sizeof(PROPSHEETHEADER);
    psh.dwFlags = PSH_PROPSHEETPAGE | PSH_NOAPPLYNOW;
    psh.hwndParent = hwndOwner;
    psh.hInstance = hInst;
    psh.pszCaption = (LPSTR)GS(OPTIONS_TITLE);
    psh.nPages = (BasicMode?sizeof(BasicPsp):sizeof(psp)) / sizeof(PROPSHEETPAGE);
    psh.nStartPage = 0;
    psh.ppsp = BasicMode?(LPCPROPSHEETPAGE) &BasicPsp:(LPCPROPSHEETPAGE) &psp;
    psh.pfnCallback = NULL;

	PropertySheet(&psh);
	LoadSettings();
	SetupMenu(hMainWindow);
	if (!AutoSleep && !ManualPaused && (CPU_Paused || CPU_Action.Pause)) { PauseCpu(); }
	return;
}
Ejemplo n.º 7
0
void QuteMessenger::startDeviceDiscovery()
{
    SetupMenu(true);
    if (devDisc) {
        ui.deviceListWidget->clear();
        foundDevices.clear();
        connect(devDisc, SIGNAL(newDeviceFound(QBtDevice)), this,
                SLOT(populateDeviceList(QBtDevice)));
        connect(devDisc, SIGNAL(discoveryStopped()), this, SLOT(deviceDiscoveryCompleteReport()));
        devDisc->startDiscovery();

        dialog = new QProgressDialog("Searching devices...", "Stop", 0, 0, this);
        dialog->setWindowModality(Qt::WindowModal);
        connect(dialog, SIGNAL(canceled()), this, SLOT(deviceDiscoveryCompleteReport()));
        dialog->setBar(NULL);

        dialog->show();
    }
}
Ejemplo n.º 8
0
/*
#ifdef Q_OS_SYMBIAN // used only to hide status pane
#include <eikspane.h>
#include <aknappui.h>
#include <avkon.rsg>
#include <EIKENV.H>
#include <coemain.h>

#endif
*/
QuteMessenger::QuteMessenger(QWidget *parent) :
    QMainWindow(parent), previousSelectedTab(0), rfcommServer(NULL), devDisc(NULL), serviceDisc(
        NULL), obexClient(NULL), dialog(NULL), obexDialog(NULL)
{
    /*
     #ifdef Q_OS_SYMBIAN
     CEikStatusPane* statusPane = STATIC_CAST( CAknAppUi*, CEikonEnv::Static()->EikAppUi())->StatusPane();
     statusPane->MakeVisible(EFalse);
     #endif*/

    int deviceYourClass = qRegisterMetaType<QBtDevice> ("QBtDevice");
    int addressYourClass = qRegisterMetaType<QBtAddress> ("QBtAddress");

    ui.setupUi(this);

    //dialog = new QProgressDialog(ui.deviceListWidget);

    CreateActions();
    SetupMenu(true);

    //setup devSearchButton signal handler
    connect(ui.devSearchButton, SIGNAL(clicked()), this, SLOT(startDeviceDiscovery()));

    connect(ui.deviceListWidget, SIGNAL(itemActivated(QListWidgetItem*)), this,
            SLOT(deviceSelected(QListWidgetItem*)));

    connect(ui.deviceListWidget, SIGNAL(itemClicked(QListWidgetItem*)), this,
            SLOT(deviceSelected(QListWidgetItem*)));

    connect(ui.tabWidget, SIGNAL( tabCloseRequested ( int )), this, SLOT(closeCurrentTab()));

    //connect(ui.)

    InitializeBluetooth();

    this->setWindowFlags(Qt::WindowSoftkeysVisibleHint);
    this->showFullScreen();

    //    QRect screenSize = QApplication::desktop()->screenGeometry();
    //    this->setGeometry(25,25, screenSize.width()/2, screenSize.height()/2);
}
Ejemplo n.º 9
0
void QuickEdit::OnContextMenu(QPoint point)
{
    QModelIndex current = ui->tvEditor->selectionModel()->currentIndex();
    if(!current.isValid())
        return;

    current = current.sibling(current.row(), 0);
    TreeItemInterface *itemAsInterface = static_cast<TreeItemInterface*>(current.internalPointer());
    BrowserNode* currentNode = static_cast<BrowserNode*>(itemAsInterface->InternalPointer());
    if(!itemAsInterface)
        return;

    CreateMenu();
    SetupMenu(itemAsInterface);
    if(currentNode->TypeID()  !=  TypeIdentifier<BrowserOperationAttribute>::id())
    {
        contextMenu->removeAction(actBefore);
        contextMenu->removeAction(actAfter);
    }

    contextMenu->popup(ui->tvEditor->mapToGlobal(point));
}
Ejemplo n.º 10
0
wxMaximaFrame::wxMaximaFrame(wxWindow* parent, int id, const wxString& title,
                             const wxPoint& pos, const wxSize& size,
                             long style):
    wxFrame(parent, id, title, pos, size, wxDEFAULT_FRAME_STYLE)
{
  m_manager.SetManagedWindow(this);
  // console
  m_console = new MathCtrl(this, -1, wxDefaultPosition, wxDefaultSize);

  // history
  m_history = new History(this, -1);

  m_plotSlider = NULL;

  SetupMenu();
#if defined (__WXMSW__) || defined (__WXGTK20__) || defined (__WXMAC__)
  SetupToolBar();
#endif


  CreateStatusBar(2);
  int widths[] =
    {
      -1, 300
    };
  SetStatusWidths(2, widths);

#if defined __WXMSW__
  wxAcceleratorEntry entries[0];
  entries[0].Set(wxACCEL_CTRL,  WXK_RETURN, menu_evaluate);
  wxAcceleratorTable accel(1, entries);
  SetAcceleratorTable(accel);
#endif

  set_properties();
  do_layout();

  m_console->SetFocus();
}
Ejemplo n.º 11
0
// **************************************************
int main (int argc, char** argv) {
  srand(iRandomSeed);
  
  glutInit(&argc,argv);
  glutInitWindowPosition(100,100);
  glutInitWindowSize(iScreenWidth,iScreenHeight);
  glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);
  int win = glutCreateWindow("Project 4 - Raytracer");
  glutSetWindow(win);
  glutKeyboardFunc(keyFunc);
  glutDisplayFunc(display); 
  
  SetupMenu();
  UserInit();
  
  glutMainLoop();
  
  UserCleanup();
  
  return 0;
  
}
Ejemplo n.º 12
0
static BOOLEAN
DoRestart (MENU_STATE *pMS)
{
	static TimeCount LastInputTime;
	static TimeCount InactTimeOut;
	TimeCount TimeIn = GetTimeCounter ();

	/* Cancel any presses of the Pause key. */
	GamePaused = FALSE;

	if (pMS->Initialized)
		Flash_process(pMS->flashContext);

	if (!pMS->Initialized)
	{
		if (pMS->hMusic)
		{
			StopMusic ();
			DestroyMusic (pMS->hMusic);
			pMS->hMusic = 0;
		}
		pMS->hMusic = LoadMusic (MAINMENU_MUSIC);
		InactTimeOut = (pMS->hMusic ? 120 : 20) * ONE_SECOND;
		pMS->flashContext = Flash_createOverlay (ScreenContext,
				NULL, NULL);
		Flash_setMergeFactors (pMS->flashContext, -3, 3, 16);
		Flash_setSpeed (pMS->flashContext, (6 * ONE_SECOND) / 16, 0,
				(6 * ONE_SECOND) / 16, 0);
		Flash_setFrameTime (pMS->flashContext, ONE_SECOND / 16);
		Flash_setState(pMS->flashContext, FlashState_fadeIn,
				(3 * ONE_SECOND) / 16);
		DrawRestartMenu (pMS, pMS->CurState, pMS->CurFrame, FALSE);
		Flash_start (pMS->flashContext);
		PlayMusic (pMS->hMusic, TRUE, 1);
		LastInputTime = GetTimeCounter ();
		pMS->Initialized = TRUE;

		SleepThreadUntil (FadeScreen (FadeAllToColor, ONE_SECOND / 2));
	}
	else if (GLOBAL (CurrentActivity) & CHECK_ABORT)
	{
		return FALSE;
	}
	else if (PulsedInputState.menu[KEY_MENU_SELECT])
	{
		//BYTE fade_buf[1];
		COUNT oldresfactor;
		BOOLEAN packsInstalled;
		
		if (resolutionFactor == 0)
			packsInstalled = TRUE;
		else if (resolutionFactor == 1 && hires2xPackPresent)
			packsInstalled = TRUE;
		else if (resolutionFactor == 2 && hires4xPackPresent)
			packsInstalled = TRUE;
		else
			packsInstalled = FALSE;
		
		switch (pMS->CurState)
		{
			case LOAD_SAVED_GAME:
				if (resFactorWasChanged)
				{
					LockMutex (GraphicsLock);
					SetFlashRect (NULL);
					UnlockMutex (GraphicsLock);
					DoPopupWindow (GAME_STRING (MAINMENU_STRING_BASE + 35));
					// Got to restart -message
					SetMenuSounds (MENU_SOUND_UP | MENU_SOUND_DOWN, MENU_SOUND_SELECT);	
					SetTransitionSource (NULL);
					BatchGraphics ();
					DrawRestartMenuGraphic (pMS);
					DrawRestartMenu (pMS, pMS->CurState, pMS->CurFrame, FALSE);
					ScreenTransition (3, NULL);
					UnbatchGraphics ();
					//fade_buf[0] = FadeAllToBlack;
					//SleepThreadUntil (XFormColorMap ((COLORMAPPTR)fade_buf, ONE_SECOND / 2));
					SleepThreadUntil (FadeScreen(FadeAllToBlack, ONE_SECOND / 2));
					GLOBAL (CurrentActivity) = CHECK_ABORT;
				}
				else if (!packsInstalled)
				{
					Flash_pause(pMS->flashContext);
					DoPopupWindow (GAME_STRING (MAINMENU_STRING_BASE + 35 + resolutionFactor));
					// Could not find graphics pack - message
					SetMenuSounds (MENU_SOUND_UP | MENU_SOUND_DOWN, MENU_SOUND_SELECT);	
					SetTransitionSource (NULL);
					BatchGraphics ();
					DrawRestartMenuGraphic (pMS);
					DrawRestartMenu (pMS, pMS->CurState, pMS->CurFrame, FALSE);
					ScreenTransition (3, NULL);
					UnbatchGraphics ();
					Flash_continue(pMS->flashContext);
					SleepThreadUntil (TimeIn + ONE_SECOND / 30);
					return TRUE;
				}
				else
				{
					LastActivity = CHECK_LOAD;
					GLOBAL (CurrentActivity) = IN_INTERPLANETARY;
				}
				break;
			case START_NEW_GAME:
				if (resFactorWasChanged)
				{
					LockMutex (GraphicsLock);
					SetFlashRect (NULL);
					UnlockMutex (GraphicsLock);
					DoPopupWindow (GAME_STRING (MAINMENU_STRING_BASE + 35));
					// Got to restart -message
					SetMenuSounds (MENU_SOUND_UP | MENU_SOUND_DOWN, MENU_SOUND_SELECT);	
					SetTransitionSource (NULL);
					BatchGraphics ();
					DrawRestartMenuGraphic (pMS);
					DrawRestartMenu (pMS, pMS->CurState, pMS->CurFrame, FALSE);
					ScreenTransition (3, NULL);
					UnbatchGraphics ();
					//fade_buf[0] = FadeAllToBlack;
					//SleepThreadUntil (XFormColorMap ((COLORMAPPTR)fade_buf, ONE_SECOND / 2));
					SleepThreadUntil (FadeScreen(FadeAllToBlack, ONE_SECOND / 2));
					GLOBAL (CurrentActivity) = CHECK_ABORT;
				}
				else if (!packsInstalled)
				{
					Flash_pause(pMS->flashContext);
					DoPopupWindow (GAME_STRING (MAINMENU_STRING_BASE + 35 + resolutionFactor));
					// Could not find graphics pack - message
					SetMenuSounds (MENU_SOUND_UP | MENU_SOUND_DOWN, MENU_SOUND_SELECT);	
					SetTransitionSource (NULL);
					BatchGraphics ();
					DrawRestartMenuGraphic (pMS);
					DrawRestartMenu (pMS, pMS->CurState, pMS->CurFrame, FALSE);
					ScreenTransition (3, NULL);
					UnbatchGraphics ();
					Flash_continue(pMS->flashContext);
					SleepThreadUntil (TimeIn + ONE_SECOND / 30);
					return TRUE;
				}
				else
				{
					LastActivity = CHECK_LOAD | CHECK_RESTART;
					GLOBAL (CurrentActivity) = IN_INTERPLANETARY;
				}				
				break;
			case PLAY_SUPER_MELEE:
				if (resFactorWasChanged)
				{
					LockMutex (GraphicsLock);
					SetFlashRect (NULL);
					UnlockMutex (GraphicsLock);
					DoPopupWindow (GAME_STRING (MAINMENU_STRING_BASE + 35));
					// Got to restart -message
					SetMenuSounds (MENU_SOUND_UP | MENU_SOUND_DOWN, MENU_SOUND_SELECT);	
					SetTransitionSource (NULL);
					BatchGraphics ();
					DrawRestartMenuGraphic (pMS);
					DrawRestartMenu (pMS, pMS->CurState, pMS->CurFrame, FALSE);
					ScreenTransition (3, NULL);
					UnbatchGraphics ();
					//fade_buf[0] = FadeAllToBlack;
					//SleepThreadUntil (XFormColorMap ((COLORMAPPTR)fade_buf, ONE_SECOND / 2));
					SleepThreadUntil (FadeScreen(FadeAllToBlack, ONE_SECOND / 2));
					GLOBAL (CurrentActivity) = CHECK_ABORT;
				}
				else if (!packsInstalled)
				{
					Flash_pause(pMS->flashContext);
					DoPopupWindow (GAME_STRING (MAINMENU_STRING_BASE + 35 + resolutionFactor));
					// Could not find graphics pack - message
					SetMenuSounds (MENU_SOUND_UP | MENU_SOUND_DOWN, MENU_SOUND_SELECT);	
					SetTransitionSource (NULL);
					BatchGraphics ();
					DrawRestartMenuGraphic (pMS);
					DrawRestartMenu (pMS, pMS->CurState, pMS->CurFrame, FALSE);
					ScreenTransition (3, NULL);
					UnbatchGraphics ();
					Flash_continue(pMS->flashContext);
					SleepThreadUntil (TimeIn + ONE_SECOND / 30);
					return TRUE;
				}
				else
				{
					GLOBAL (CurrentActivity) = SUPER_MELEE;
				}
				break;
			case SETUP_GAME:
				oldresfactor = resolutionFactor;
				Flash_pause(pMS->flashContext);
				Flash_setState(pMS->flashContext, FlashState_fadeIn,
						(3 * ONE_SECOND) / 16);
				SetupMenu ();
				SetMenuSounds (MENU_SOUND_UP | MENU_SOUND_DOWN,
						MENU_SOUND_SELECT);
				LastInputTime = GetTimeCounter ();
				SetTransitionSource (NULL);
				BatchGraphics ();
				DrawRestartMenuGraphic (pMS);
				ScreenTransition (3, NULL);
				
				// JMS_GFX: This prevents drawing an annoying wrong-sized "Setup" frame when changing resolution. 
				if (oldresfactor < resolutionFactor)
					DrawRestartMenu (pMS, pMS->CurState, pMS->CurFrame, TRUE);
				
				DrawRestartMenu (pMS, pMS->CurState, pMS->CurFrame, FALSE);
				Flash_continue(pMS->flashContext);
				UnbatchGraphics ();
				return TRUE;
			case QUIT_GAME:
				SleepThreadUntil (FadeScreen (FadeAllToBlack, ONE_SECOND / 2));
				GLOBAL (CurrentActivity) = CHECK_ABORT;
				break;
		}

		Flash_pause(pMS->flashContext);

		return FALSE;
	}
	else if (PulsedInputState.menu[KEY_MENU_UP] ||
			PulsedInputState.menu[KEY_MENU_DOWN])
	{
		BYTE NewState;

		NewState = pMS->CurState;
		if (PulsedInputState.menu[KEY_MENU_UP])
		{
			if (NewState == START_NEW_GAME)
				NewState = QUIT_GAME;
			else
				--NewState;
		}
		else if (PulsedInputState.menu[KEY_MENU_DOWN])
		{
			if (NewState == QUIT_GAME)
				NewState = START_NEW_GAME;
			else
				++NewState;
		}
		if (NewState != pMS->CurState)
		{
			BatchGraphics ();
			DrawRestartMenu (pMS, NewState, pMS->CurFrame, FALSE);
			UnbatchGraphics ();
			pMS->CurState = NewState;
		}

		LastInputTime = GetTimeCounter ();
	}
	else if (PulsedInputState.menu[KEY_MENU_LEFT] ||
			PulsedInputState.menu[KEY_MENU_RIGHT])
	{	// Does nothing, but counts as input for timeout purposes
		LastInputTime = GetTimeCounter ();
	}
	else if (MouseButtonDown)
	{
		Flash_pause(pMS->flashContext);
		DoPopupWindow (GAME_STRING (MAINMENU_STRING_BASE + 54));
				// Mouse not supported message
		SetMenuSounds (MENU_SOUND_UP | MENU_SOUND_DOWN, MENU_SOUND_SELECT);	
		SetTransitionSource (NULL);
		BatchGraphics ();
		DrawRestartMenuGraphic (pMS);
		DrawRestartMenu (pMS, pMS->CurState, pMS->CurFrame, FALSE);
		ScreenTransition (3, NULL);
		UnbatchGraphics ();
		Flash_continue(pMS->flashContext);

		LastInputTime = GetTimeCounter ();
	}
	else
	{	// No input received, check if timed out
		if (GetTimeCounter () - LastInputTime > InactTimeOut)
		{
			SleepThreadUntil (FadeMusic (0, ONE_SECOND));
			StopMusic ();
			FadeMusic (NORMAL_VOLUME, 0);

			GLOBAL (CurrentActivity) = (ACTIVITY)~0;
			return FALSE;
		}
	}

	SleepThreadUntil (TimeIn + ONE_SECOND / 30);

	return TRUE;
}
Ejemplo n.º 13
0
int main() // MAIN PROGRAM AND First Level Menu
{
	uint8 c,MenuSel;		// local var to hold result of which menu item we selected

	InitPIC32();			// initialise MPU
	CloseWiFi();			// Wifi powered Off
	CloseBarcode();		// Barcode powered Off
	PeripheralReset();
	InitLCD();				// initialise LCD
	CloseRFID();			// RFID off / sleep

	if(BrownOutReset()) // if the system crapped out previously, then just warn the user to charge the device and power off
	{
		LCDInform(" POWER! ","Please Charge!");
	  PWR_HOLD(0); // turn off power when above message acknowleged
	}

	while(1) // main program loop (do this until powered off or sleep)
	{
 	  MenuSel = GetMenuItem("READY","Scan Barcode","Scan RFID","Setup","Shutdown","");

		if(MenuSel==1) // SCAN barcode
		{
			if(ReadBarcode()>1) // we got a barcode! Barcodes are encoded with the first letter designating the barcode type (or obviously the system wont have a clue!)
			{
				if(BarcodeData[0]=='J') OldJobMenu(BarcodeData);
				else
				if(BarcodeData[0]=='X') NewJobMenu(BarcodeData);
				else
				if(BarcodeData[0]=='S' && BarcodeData[1]=='M') StockMenu(BarcodeData);
				else
				if(BarcodeData[0]=='A') AssetMenu(BarcodeData);
				else
				if(BarcodeData[0]=='L') LabMenu(BarcodeData);
				else
  				LCDInform("UID",BarcodeData);
			}
		}

		if(MenuSel==2) // scan RFID tag
		{
			CLS();
      LCDWriteStrAt(1,6,"SCAN RFID TAG");
  		if (ReadRFIDUID()) // get UID
			{
				LCDInform("UID",uid.SerialNo);
        ReadRFIDBlock(1);
			}
		}

		if(MenuSel==3) // setup menu
		{
   		SetupMenu();
		}

		if(MenuSel==4) // power off
		{
		  PWR_HOLD(0); // remove power to CPU - if on battery power this will turn off power to CPU and effectively end the program here!
			CLS();
			if(ReadFloatAt(0,8,500,7))	LCDInform("Number was",KeypadData);
		}

	}
}
Ejemplo n.º 14
0
static BOOLEAN
DoRestart (PMENU_STATE pMS)
{
	static DWORD InTime;
	static DWORD InactTimeOut;

	/* Cancel any presses of the Pause key. */
	GamePaused = FALSE;

	if (!pMS->Initialized)
	{
		if (pMS->hMusic)
		{
			StopMusic ();
			DestroyMusic (pMS->hMusic);
			pMS->hMusic = 0;
		}
		pMS->hMusic = LoadMusic (MAINMENU_MUSIC);
		InactTimeOut = (pMS->hMusic ? 120 : 20) * ONE_SECOND;
		
		PlayMusic (pMS->hMusic, TRUE, 1);
		DrawRestartMenu ((BYTE)~0, pMS->CurState, pMS->CurFrame);
		pMS->Initialized = TRUE;

		{
			BYTE clut_buf[] = {FadeAllToColor};
			DWORD TimeOut = XFormColorMap ((COLORMAPPTR)clut_buf, ONE_SECOND / 2);
			while ((GetTimeCounter () <= TimeOut) &&
			       !(GLOBAL (CurrentActivity) & CHECK_ABORT))
			{
				UpdateInputState ();
				TaskSwitch ();
			}
		}
	}
#ifdef TESTING
else if (InputState & DEVICE_EXIT) return (FALSE);
#endif /* TESTING */
	else if (GLOBAL (CurrentActivity) & CHECK_ABORT)
	{
		return (FALSE);
	}
	else if (!(PulsedInputState.menu[KEY_MENU_UP] || PulsedInputState.menu[KEY_MENU_DOWN] ||
			PulsedInputState.menu[KEY_MENU_LEFT] || PulsedInputState.menu[KEY_MENU_RIGHT] ||
			PulsedInputState.menu[KEY_MENU_SELECT] || MouseButtonDown))

	{
		if (GetTimeCounter () - InTime < InactTimeOut)
			return (TRUE);

		SleepThreadUntil (FadeMusic (0, ONE_SECOND));
		StopMusic ();
		FadeMusic (NORMAL_VOLUME, 0);

		GLOBAL (CurrentActivity) = (ACTIVITY)~0;
		return (FALSE);
	}
	else if (PulsedInputState.menu[KEY_MENU_SELECT])
	{
		BYTE fade_buf[1];

		switch (pMS->CurState)
		{
			case LOAD_SAVED_GAME:
				LastActivity = CHECK_LOAD;
				GLOBAL (CurrentActivity) = IN_INTERPLANETARY;
				break;
			case START_NEW_GAME:
				LastActivity = CHECK_LOAD | CHECK_RESTART;
				GLOBAL (CurrentActivity) = IN_INTERPLANETARY;
				break;
			case PLAY_SUPER_MELEE:
				GLOBAL (CurrentActivity) = SUPER_MELEE;
				break;
			case SETUP_GAME:
				LockMutex (GraphicsLock);
				SetFlashRect (NULL_PTR, (FRAME)0);
				UnlockMutex (GraphicsLock);
				SetupMenu ();
				SetMenuSounds (MENU_SOUND_UP | MENU_SOUND_DOWN, MENU_SOUND_SELECT);
				InTime = GetTimeCounter ();
				SetTransitionSource (NULL);
				BatchGraphics ();
				DrawRestartMenuGraphic (pMS);
				DrawRestartMenu ((BYTE)~0, pMS->CurState, pMS->CurFrame);
				ScreenTransition (3, NULL);
				UnbatchGraphics ();
				return TRUE;
			case QUIT_GAME:
				fade_buf[0] = FadeAllToBlack;
				SleepThreadUntil (XFormColorMap ((COLORMAPPTR)fade_buf, ONE_SECOND / 2));

				GLOBAL (CurrentActivity) = CHECK_ABORT;
				break;
		}

		LockMutex (GraphicsLock);
		SetFlashRect (NULL_PTR, (FRAME)0);
		UnlockMutex (GraphicsLock);

		return (FALSE);
	}
	else
	{
		BYTE NewState;

		NewState = pMS->CurState;
		if (PulsedInputState.menu[KEY_MENU_UP])
		{
			if (NewState-- == START_NEW_GAME)
				NewState = QUIT_GAME;
		}
		else if (PulsedInputState.menu[KEY_MENU_DOWN])
		{
			if (NewState++ == QUIT_GAME)
				NewState = START_NEW_GAME;
		}
		if (NewState != pMS->CurState)
		{
			BatchGraphics ();
			DrawRestartMenu (pMS->CurState, NewState, pMS->CurFrame);
			UnbatchGraphics ();
			pMS->CurState = NewState;
		}
	}

//	if (MouseButtonDown)
//	{
//		LockMutex (GraphicsLock);
//		SetFlashRect (NULL_PTR, (FRAME)0);
//		UnlockMutex (GraphicsLock);
//		MouseError ();
//		SetMenuSounds (MENU_SOUND_UP | MENU_SOUND_DOWN, MENU_SOUND_SELECT);	
//		SetTransitionSource (NULL);
//		BatchGraphics ();
//		DrawRestartMenuGraphic (pMS);
//		DrawRestartMenu ((BYTE)~0, pMS->CurState, pMS->CurFrame);
//		ScreenTransition (3, NULL);
//		UnbatchGraphics ();
//	}
	if (MouseButtonDown)
	{
        // TODO WTF FIX GAME CONTROLS
    }
    
	InTime = GetTimeCounter ();
	return (TRUE);
}
Ejemplo n.º 15
0
void CToyEditor::Layout()
{
	m_pCreateToySourcePanel->SetVisible(false);
	m_pSourcePanel->SetVisible(false);

	if (!m_oToySource.m_sFilename.length())
		m_pCreateToySourcePanel->SetVisible(true);
	else
		m_pSourcePanel->SetVisible(true);

	SetupMenu();

	bool bGenPreviewDistance = false;

	if (!CModelLibrary::GetModel(m_iMeshPreview))
		m_iMeshPreview = ~0;

	tstring sMesh = FindAbsolutePath(GetDirectory(GetToy().m_sFilename) + "/" + GetToy().m_sMesh);
	if (IsFile(sMesh))
	{
		if (m_iMeshPreview != ~0)
		{
			CModel* pMesh = CModelLibrary::GetModel(m_iMeshPreview);
			if (sMesh != FindAbsolutePath(pMesh->m_sFilename))
			{
				CModelLibrary::ReleaseModel(m_iMeshPreview);
				CModelLibrary::ClearUnreferenced();
				m_iMeshPreview = CModelLibrary::AddModel(sMesh);
				bGenPreviewDistance = true;
			}
		}
		else
		{
			m_iMeshPreview = CModelLibrary::AddModel(sMesh);
			bGenPreviewDistance = true;
		}
	}
	else
	{
		if (m_iMeshPreview != ~0)
		{
			CModelLibrary::ReleaseModel(m_iMeshPreview);
			CModelLibrary::ClearUnreferenced();
			m_iMeshPreview = ~0;
		}
	}

	if (m_iMeshPreview != ~0 && bGenPreviewDistance)
		m_flPreviewDistance = CModelLibrary::GetModel(m_iMeshPreview)->m_aabbVisBoundingBox.Size().Length()*2;

	m_hMaterialPreview.Reset();
	tstring sMaterial = GetToy().m_sMesh;
	if (IsFile(sMaterial))
	{
		// Don't bother with clearing old ones, they'll get flushed eventually.
		CMaterialHandle hMaterialPreview = CMaterialLibrary::AddMaterial(sMaterial);

		if (hMaterialPreview.IsValid())
		{
			m_hMaterialPreview = hMaterialPreview;

			if (m_hMaterialPreview->m_ahTextures.size())
			{
				CTextureHandle hBaseTexture = m_hMaterialPreview->m_ahTextures[0];

				m_flPreviewDistance = (float)(hBaseTexture->m_iHeight + hBaseTexture->m_iWidth)/100;
			}
		}
	}

	tstring sPhys = FindAbsolutePath(GetDirectory(GetToy().m_sFilename) + "/" + GetToy().m_sPhys);
	if (IsFile(sPhys))
	{
		if (m_iPhysPreview != ~0)
		{
			CModel* pPhys = CModelLibrary::GetModel(m_iPhysPreview);
			if (sPhys != FindAbsolutePath(pPhys->m_sFilename))
			{
				CModelLibrary::ReleaseModel(m_iPhysPreview);
				CModelLibrary::ClearUnreferenced();
				m_iPhysPreview = CModelLibrary::AddModel(sPhys);
			}
		}
		else
			m_iPhysPreview = CModelLibrary::AddModel(sPhys);
	}
	else
	{
		if (m_iPhysPreview != ~0)
		{
			CModelLibrary::ReleaseModel(m_iPhysPreview);
			CModelLibrary::ClearUnreferenced();
		}
		m_iPhysPreview = ~0;
	}
}
Ejemplo n.º 16
0
int SerialConfig(void)
{
	short	key;
	short field;
	int   rval = 0;
	char  *args[MAXARGS];
	int   argcount;
	char  string[MAXARGS*2][12];
	int   i;
	int   level;


	sinfo = serialinfo;       // save copy of modeminfo

	SaveScreen();
	DrawPup(&cserial);

	//
	// Set defaults
	//
	sinfo.skillLevel = 3;
	DrawRadios(&sskillg);

	sinfo.episode = 1;
	#ifndef DOOM2
	DrawRadios(&sepig);
	#endif

	sinfo.deathMatch = 1;
	DrawRadios(&sdeathg);

	sinfo.comport = comport;
	DrawRadios(&scomg);

	while(1)
	{
		SetupMenu(&cserialmenu);
		field = GetMenuInput();
		key = menukey;
		switch ( key )
		{
			case KEY_ESC:
				rval = -1;
				goto func_exit;

			//
			// Secret WARP code: F5+warp
			//
			case KEY_F1:
			{
				level = WarpTime();
				if (!level)
					continue;

				serialinfo = sinfo;

				M_SaveDefaults();
				RestoreScreen();

				argcount = 1;

				args[0] = "sersetup.exe ";

				if (cdrom)
					args[argcount++] = "-cdrom";

				args[argcount++] = "-skill";
				sprintf(string[argcount],"%d",serialinfo.skillLevel);
				args[argcount] = string[argcount];
				argcount++;

				if (!level)
				{
					#ifndef DOOM2
					 args[argcount++] = "-episode";
					 sprintf(string[argcount],"%d",serialinfo.episode);
					 args[argcount] = string[argcount];
					 argcount++;
					#endif
				}
				else
				{
					args[argcount++] = "-warp";
					#ifdef DOOM2
					sprintf(string[argcount],"%d",level);
					args[argcount] = string[argcount];
					#else
					sprintf(string[argcount],"%d",level>>8);
					args[argcount] = string[argcount];
					argcount++;
					sprintf(string[argcount],"%d",level&0x0f);
					args[argcount] = string[argcount];
					#endif
					argcount++;
				}

				if (serialinfo.deathMatch)
					args[argcount++] = "-deathmatch";

				if (nomonsters)
					args[argcount++] = "-nomonsters";

				if (respawn)
					args[argcount++] = "-respawn";

				if (deathmatch2 && serialinfo.deathMatch)
					args[argcount++] = "-altdeath";

				sprintf(string[argcount],"-com%d",serialinfo.comport);
				args[argcount] = string[argcount];
				argcount++;

				for (i = 1;i < myargc; i++)
					args[argcount++] = myargv[i];

				args[argcount] = NULL;

				textbackground(0);
				textcolor(7);
				clrscr();

				execv("sersetup.exe",args);

				//
				// ERROR EXECing!
				//
				printf("Problem EXECing SERSETUP for netplay. Need to be in same directory!");
				exit(1);

			}
			break;

exitandsave:
			case KEY_F10:

				serialinfo = sinfo;

				M_SaveDefaults();
				RestoreScreen();

				argcount = 1;

				args[0] = "sersetup.exe ";

					if (cdrom)
						args[argcount++] = "-cdrom";

				args[argcount++] = "-skill";
				sprintf(string[argcount],"%d",serialinfo.skillLevel);
				args[argcount] = string[argcount];
				argcount++;

				if (serialinfo.deathMatch)
					args[argcount++] = "-deathmatch";

				#ifndef DOOM2
				args[argcount++] = "-episode";
				sprintf(string[argcount],"%d",serialinfo.episode);
				args[argcount] = string[argcount];
				argcount++;
				#endif

				sprintf(string[argcount],"-com%d",serialinfo.comport);
				args[argcount] = string[argcount];
				argcount++;
            
            for (i = 1;i < myargc; i++)
               args[argcount++] = myargv[i];

            args[argcount] = NULL;

				textbackground(0);
				textcolor(7);
				clrscr();

				execv("sersetup.exe",args);

				//
				// ERROR EXECing!
				//
				printf("Problem EXECing SERSETUP for netplay. Need to be in same directory!");
				exit(1);

			case KEY_ENTER:
			case 32:
			switch ( field )
			{
				#ifndef DOOM2
				//
				// Episode
				//
				case SER_EPISODE0:
				case SER_EPISODE1:
				case SER_EPISODE2:
					sinfo.episode = field - SER_EPISODE0 + 1;
					DrawRadios(&sepig);
					break;
				#endif

				//
				// Skill level
				//
				case SER_SKILL1:
				case SER_SKILL2:
				case SER_SKILL3:
				case SER_SKILL4:
					sinfo.skillLevel = field - SER_SKILL1 + 2; break;

				//
				// Deathmatch
				//
				case SER_DEATHNO:
				case SER_DEATHYES:
					sinfo.deathMatch = field - SER_DEATHNO;
					break;

				//
				// COM port
				//
				case SER_COM1:
				case SER_COM2:
				case SER_COM3:
				case SER_COM4:
					comport = sinfo.comport = field - SER_COM1 + 1;
					break;

				default:
					break;
			}
			DrawRadios(&sskillg);
			DrawRadios(&sdeathg);
			DrawRadios(&scomg);
			break;
		}
	}

	func_exit:

	RestoreScreen();
	return ( rval );
}
Ejemplo n.º 17
0
int ChooseSbDma (DMXCARD * card)
{
	short	key;
	short field;
	int   rval = 0;

	switch ( card->dma )
	{
		case 0:
			field = SB_DMA_0;
			break;

		default:
		case 1:
			field = SB_DMA_1;
			break;

		case 3:
			field = SB_DMA_3;
			break;

		case 5:
			field = SB_DMA_5;
			break;

		case 6:
			field = SB_DMA_6;
			break;

		case 7:
			field = SB_DMA_7;
			break;
	}

	SaveScreen();
	DrawPup(&sbdma);
	sbdmamenu.startitem = field;

	while(1)
	{
		SetupMenu(&sbdmamenu);
		field = GetMenuInput();
		key = menukey;
		switch ( key )
		{
			case KEY_ESC:
				rval = -1;
				goto func_exit;

			case KEY_ENTER:
			case KEY_F10:
			switch ( field )
			{
				case SB_DMA_0:
					card->dma = 0;
					goto func_exit;

				case SB_DMA_1:
					card->dma = 1;
					goto func_exit;

				case SB_DMA_3:
					card->dma = 3;
					goto func_exit;

				case SB_DMA_5:
					card->dma = 5;
					goto func_exit;

				case SB_DMA_6:
					card->dma = 6;
					goto func_exit;

				case SB_DMA_7:
					card->dma = 7;
					goto func_exit;

				default:
					break;
			}
				break;
		}
	}

	func_exit:

	RestoreScreen();
	return ( rval );
}
Ejemplo n.º 18
0
void QuteMessenger::deviceSelected(QListWidgetItem* item)
{
    SetupMenu(false);
    selectedDeviceName = item->text();
}
Ejemplo n.º 19
0
int RestoreSerial(void)
{
	short field;
	short	key;
	int   rval = 0;
	char  *args[MAXARGS];
	int   argcount;
	char  string[MAXARGS*2][16];
	int   i;
	int   numplayers[6];
	int   saveslot;
	int   handle;
	char  name[32];
	char  p1,p2,p3,p4;


	sinfo = serialinfo;       // save copy of netinfo

	SaveScreen();
	DrawPup(&sersave);

	saveslot = -1;
	memset(savenames,0,6*24);

	//
	// Read in savegame strings
	//
	textbackground(1);
	textcolor(15);
	for (i = 0;i < 6;i++)
	{
		sprintf(name,SAVENAME,i);
		handle = open (name, O_BINARY | O_RDONLY);
		if (handle == -1)
			continue;

		read(handle,savenames[i],24);
		lseek(handle,27+16,SEEK_SET);
		read(handle,&p1,1);
		read(handle,&p2,1);
		read(handle,&p3,1);
		read(handle,&p4,1);
		numplayers[i] = p1+p2+p3+p4;
		close(handle);

		Clear(&sersaveitems[i]);
		Pos(&sersaveitems[i]);
		cprintf("%s",savenames[i]);
	}

	//
	// Set defaults
	//
	sinfo.comport = comport;
	DrawRadios(&serscomg);

	sinfo.deathMatch = 0;
	DrawRadios(&sersdeathg);
	gotoxy(1,25);

	while(1)
	{
		SetupMenu(&sersavemenu);
		field = GetMenuInput();
		key = menukey;
      switch ( key )
		{
			case KEY_ESC:
				rval = -1;
				goto func_exit;

exitandsave:
			case KEY_F10:

				if (saveslot < 0)
				{
					ErrorWindow(&netserr);
					break;
				}

				serialinfo = sinfo;

				M_SaveDefaults();
				RestoreScreen();

				argcount = 1;

				args[0] = "sersetup.exe ";

					if (cdrom)
						args[argcount++] = "-cdrom";

				args[argcount++] = "-nodes";
				sprintf(string[argcount],"%d",numplayers[saveslot]);
				args[argcount] = string[argcount];
				argcount++;

				if (modeminfo.deathMatch)
					args[argcount++] = "-deathmatch";

				sprintf(string[argcount],"-com%d",serialinfo.comport);
				args[argcount] = string[argcount];
				argcount++;

				args[argcount++] = "-loadgame";
				sprintf(string[argcount],"%d",saveslot);
				args[argcount] = string[argcount];
				argcount++;

				for (i = 1;i < myargc; i++)
					args[argcount++] = myargv[i];

				args[argcount] = NULL;

				textbackground(0);
				textcolor(7);
				clrscr();

				execv("sersetup.exe",args);

				//
				// ERROR EXECing!
				//
				printf("Problem EXECing SERSETUP for netplay. Need to be in same directory!");
				exit(0);

			case KEY_ENTER:
				switch ( field )
				{
					case SERS_COM1:
					case SERS_COM2:
					case SERS_COM3:
					case SERS_COM4:
						sinfo.comport = field - SERS_COM1 + 1;
						DrawRadios(&serscomg);
						break;

					case SERS_0:
					case SERS_1:
					case SERS_2:
					case SERS_3:
					case SERS_4:
					case SERS_5:
						if (!savenames[field - SERS_0][0])
						{
							Sound(1000,12);
							break;
						}
						saveslot = field - SERS_0;
						DrawRadios(&serslotsg);
						break;

					//
					// Deathmatch
					//
					case SERS_DEATHNO:
					case SERS_DEATHYES:
						sinfo.deathMatch = field - SERS_DEATHNO;
						DrawRadios(&sersdeathg);

					default:
						break;
				}
            break;
      }
   }
  
   func_exit:
  
	RestoreScreen();
	return ( rval );
}
Ejemplo n.º 20
0
static BOOLEAN
DoRestart (MENU_STATE *pMS)
{
	static TimeCount LastInputTime;
	static TimeCount InactTimeOut;
	TimeCount TimeIn = GetTimeCounter ();

	/* Cancel any presses of the Pause key. */
	GamePaused = FALSE;

	if (pMS->Initialized)
		Flash_process(pMS->flashContext);

	if (!pMS->Initialized)
	{
		if (pMS->hMusic)
		{
			StopMusic ();
			DestroyMusic (pMS->hMusic);
			pMS->hMusic = 0;
		}
		pMS->hMusic = LoadMusic (MAINMENU_MUSIC);
		InactTimeOut = (pMS->hMusic ? 120 : 20) * ONE_SECOND;
		pMS->flashContext = Flash_createOverlay (ScreenContext,
				NULL, NULL);
		Flash_setMergeFactors (pMS->flashContext, -3, 3, 16);
		Flash_setSpeed (pMS->flashContext, (6 * ONE_SECOND) / 16, 0,
				(6 * ONE_SECOND) / 16, 0);
		Flash_setFrameTime (pMS->flashContext, ONE_SECOND / 16);
		Flash_setState(pMS->flashContext, FlashState_fadeIn,
				(3 * ONE_SECOND) / 16);
		DrawRestartMenu (pMS, pMS->CurState, pMS->CurFrame);
		Flash_start (pMS->flashContext);
		PlayMusic (pMS->hMusic, TRUE, 1);
		LastInputTime = GetTimeCounter ();
		pMS->Initialized = TRUE;

		SleepThreadUntil (FadeScreen (FadeAllToColor, ONE_SECOND / 2));
	}
	else if (GLOBAL (CurrentActivity) & CHECK_ABORT)
	{
		return FALSE;
	}
	else if (PulsedInputState.menu[KEY_MENU_SELECT])
	{
		switch (pMS->CurState)
		{
			case LOAD_SAVED_GAME:
				LastActivity = CHECK_LOAD;
				GLOBAL (CurrentActivity) = IN_INTERPLANETARY;
				break;
			case START_NEW_GAME:
				LastActivity = CHECK_LOAD | CHECK_RESTART;
				GLOBAL (CurrentActivity) = IN_INTERPLANETARY;
				break;
			case PLAY_SUPER_MELEE:
				GLOBAL (CurrentActivity) = SUPER_MELEE;
				break;
			case SETUP_GAME:
				Flash_pause(pMS->flashContext);
				Flash_setState(pMS->flashContext, FlashState_fadeIn,
						(3 * ONE_SECOND) / 16);
				SetupMenu ();
				SetMenuSounds (MENU_SOUND_UP | MENU_SOUND_DOWN,
						MENU_SOUND_SELECT);
				LastInputTime = GetTimeCounter ();
				SetTransitionSource (NULL);
				BatchGraphics ();
				DrawRestartMenuGraphic (pMS);
				ScreenTransition (3, NULL);
				DrawRestartMenu (pMS, pMS->CurState, pMS->CurFrame);
				Flash_continue(pMS->flashContext);
				UnbatchGraphics ();
				return TRUE;
			case QUIT_GAME:
				SleepThreadUntil (FadeScreen (FadeAllToBlack, ONE_SECOND / 2));
				GLOBAL (CurrentActivity) = CHECK_ABORT;
				break;
		}

		Flash_pause(pMS->flashContext);

		return FALSE;
	}
	else if (PulsedInputState.menu[KEY_MENU_UP] ||
			PulsedInputState.menu[KEY_MENU_DOWN])
	{
		BYTE NewState;

		NewState = pMS->CurState;
		if (PulsedInputState.menu[KEY_MENU_UP])
		{
			if (NewState == START_NEW_GAME)
				NewState = QUIT_GAME;
			else
				--NewState;
		}
		else if (PulsedInputState.menu[KEY_MENU_DOWN])
		{
			if (NewState == QUIT_GAME)
				NewState = START_NEW_GAME;
			else
				++NewState;
		}
		if (NewState != pMS->CurState)
		{
			BatchGraphics ();
			DrawRestartMenu (pMS, NewState, pMS->CurFrame);
			UnbatchGraphics ();
			pMS->CurState = NewState;
		}

		LastInputTime = GetTimeCounter ();
	}
	else if (PulsedInputState.menu[KEY_MENU_LEFT] ||
			PulsedInputState.menu[KEY_MENU_RIGHT])
	{	// Does nothing, but counts as input for timeout purposes
		LastInputTime = GetTimeCounter ();
	}
	else if (MouseButtonDown)
	{
		Flash_pause(pMS->flashContext);
		DoPopupWindow (GAME_STRING (MAINMENU_STRING_BASE + 54));
				// Mouse not supported message
		SetMenuSounds (MENU_SOUND_UP | MENU_SOUND_DOWN, MENU_SOUND_SELECT);	
		SetTransitionSource (NULL);
		BatchGraphics ();
		DrawRestartMenuGraphic (pMS);
		DrawRestartMenu (pMS, pMS->CurState, pMS->CurFrame);
		ScreenTransition (3, NULL);
		UnbatchGraphics ();
		Flash_continue(pMS->flashContext);

		LastInputTime = GetTimeCounter ();
	}
	else
	{	// No input received, check if timed out
		if (GetTimeCounter () - LastInputTime > InactTimeOut)
		{
			SleepThreadUntil (FadeMusic (0, ONE_SECOND));
			StopMusic ();
			FadeMusic (NORMAL_VOLUME, 0);

			GLOBAL (CurrentActivity) = (ACTIVITY)~0;
			return FALSE;
		}
	}

	SleepThreadUntil (TimeIn + ONE_SECOND / 30);

	return TRUE;
}
Ejemplo n.º 21
0
int ChooseController (void)
{
	short	key;
	short field;
	int   rval = 0;

	SaveScreen();
	DrawPup(&control);

	// DEFAULT FIELD ========================================

	if (newc.control == C_MOUSE)
		field = CON_MOUSE;
   else
   if (newc.control == C_JOYSTICK)
      field = CON_JOY;
   else
   field = CON_KEY;

	controlmenu.startitem = field;
	while(1)
	{
		SetupMenu(&controlmenu);
		field = GetMenuInput();
		key = menukey;
		switch ( key )
		{
			case KEY_ESC:
				rval = -1;
				goto func_exit;

         case KEY_ENTER:
         case KEY_F10:
         switch ( field )
         {
            case CON_KEY:
               newc.control = C_KEY;
               usemouse = 0;
               usejoystick = 0;
               goto func_exit;
  
            case CON_MOUSE:
               newc.control = C_MOUSE;
               usemouse = 1;
               usejoystick = 0;
               goto func_exit;
  
            case CON_JOY:
               newc.control = C_JOYSTICK;
               usemouse = 0;
               usejoystick = 1;
               goto func_exit;
  
            default:
               break;
         }
            break;
      }
   }
  
   func_exit:

	RestoreScreen();
	DrawCurrentConfig();
   return ( rval );
}
Ejemplo n.º 22
0
void CAbstractVstEditor::OnInitMenu(CMenu* /*pMenu*/)
//---------------------------------------------------
{
    //AfxMessageBox("");
    SetupMenu();
}
Ejemplo n.º 23
0
static BOOLEAN
DoRestart (MENU_STATE *pMS)
{
	static TimeCount LastInputTime;
	static TimeCount InactTimeOut;
	TimeCount TimeIn = GetTimeCounter ();

	/* Cancel any presses of the Pause key. */
	GamePaused = FALSE;
	
	if(optSuperMelee && !optLoadGame && PacksInstalled()){
		pMS->CurState = PLAY_SUPER_MELEE;
		PulsedInputState.menu[KEY_MENU_SELECT] = 65535;
	}
	if(optLoadGame && !optSuperMelee && PacksInstalled()){
		pMS->CurState = LOAD_SAVED_GAME;
		PulsedInputState.menu[KEY_MENU_SELECT] = 65535;
	}

	if (pMS->Initialized)
		Flash_process(pMS->flashContext);

	if (!pMS->Initialized)
	{
		if (pMS->hMusic && !comingFromInit)
		{
			StopMusic ();
			DestroyMusic (pMS->hMusic);
			pMS->hMusic = 0;
		}
		
		pMS->hMusic = loadMainMenuMusic (Rando);
		InactTimeOut = (optMainMenuMusic ? 60 : 20) * ONE_SECOND;

		pMS->flashContext = Flash_createOverlay (ScreenContext,
				NULL, NULL);
		Flash_setMergeFactors (pMS->flashContext, -3, 3, 16);
		Flash_setSpeed (pMS->flashContext, (6 * ONE_SECOND) / 14, 0,
				(6 * ONE_SECOND) / 14, 0);
		Flash_setFrameTime (pMS->flashContext, ONE_SECOND / 16);
		Flash_setState(pMS->flashContext, FlashState_fadeIn,
				(3 * ONE_SECOND) / 16);

		DrawRestartMenu (pMS, pMS->CurState, pMS->CurFrame, FALSE);
		Flash_start (pMS->flashContext);
		LastInputTime = GetTimeCounter ();
		pMS->Initialized = TRUE;

		SleepThreadUntil (FadeScreen (FadeAllToColor, ONE_SECOND / 2));
		if (!comingFromInit){
			FadeMusic(0,0);
			PlayMusic (pMS->hMusic, TRUE, 1);
		
			if (optMainMenuMusic)
				FadeMusic (NORMAL_VOLUME+70, ONE_SECOND * 3);
		}
	}
	else if (GLOBAL (CurrentActivity) & CHECK_ABORT)
	{
		return FALSE;
	}
	else if (PulsedInputState.menu[KEY_MENU_SELECT])
	{
		//BYTE fade_buf[1];
		COUNT oldresfactor;

		switch (pMS->CurState)
		{
			case LOAD_SAVED_GAME:
				if (!RestartMessage(pMS, TimeIn)) {
					LastActivity = CHECK_LOAD;
					GLOBAL (CurrentActivity) = IN_INTERPLANETARY;
					optLoadGame = FALSE;
				} else
					return TRUE;
				break;
			case START_NEW_GAME:
				if (!RestartMessage(pMS, TimeIn)) {
					LastActivity = CHECK_LOAD | CHECK_RESTART;
					GLOBAL (CurrentActivity) = IN_INTERPLANETARY;
				} else
					return TRUE;
				break;
			case PLAY_SUPER_MELEE:
				if (!RestartMessage(pMS, TimeIn)) {
					GLOBAL (CurrentActivity) = SUPER_MELEE;
					optSuperMelee = FALSE;
				} else
					return TRUE;
				break;
			case SETUP_GAME:
				oldresfactor = resolutionFactor;
				
				Flash_pause(pMS->flashContext);
				Flash_setState(pMS->flashContext, FlashState_fadeIn,
						(3 * ONE_SECOND) / 16);
				SetupMenu ();
				SetMenuSounds (MENU_SOUND_UP | MENU_SOUND_DOWN,
						MENU_SOUND_SELECT);

				InactTimeOut = (optMainMenuMusic ? 60 : 20) * ONE_SECOND;

				LastInputTime = GetTimeCounter ();
				SetTransitionSource (NULL);
				BatchGraphics ();
				DrawRestartMenuGraphic (pMS);
				ScreenTransition (3, NULL);
				// JMS_GFX: This prevents drawing an annoying wrong-sized "Setup" frame when changing resolution. 
				if (oldresfactor < resolutionFactor)
					DrawRestartMenu (pMS, pMS->CurState, pMS->CurFrame, TRUE);
				
				DrawRestartMenu (pMS, pMS->CurState, pMS->CurFrame, FALSE);
				Flash_continue(pMS->flashContext);
				UnbatchGraphics ();
				return TRUE;
			case QUIT_GAME:
				SleepThreadUntil (FadeScreen (FadeAllToBlack, ONE_SECOND / 2));
				GLOBAL (CurrentActivity) = CHECK_ABORT;
				break;
		}

		Flash_pause(pMS->flashContext);

		return FALSE;
	}
	else if (PulsedInputState.menu[KEY_MENU_UP] ||
			PulsedInputState.menu[KEY_MENU_DOWN])
	{
		BYTE NewState;

		NewState = pMS->CurState;
		if (PulsedInputState.menu[KEY_MENU_UP])
		{
			if (NewState == START_NEW_GAME)
				NewState = QUIT_GAME;
			else
				--NewState;
		}
		else if (PulsedInputState.menu[KEY_MENU_DOWN])
		{
			if (NewState == QUIT_GAME)
				NewState = START_NEW_GAME;
			else
				++NewState;
		}
		if (NewState != pMS->CurState)
		{
			BatchGraphics ();
			DrawRestartMenu (pMS, NewState, pMS->CurFrame, FALSE);
			UnbatchGraphics ();
			pMS->CurState = NewState;
		}

		LastInputTime = GetTimeCounter ();
	}
	else if (PulsedInputState.menu[KEY_MENU_LEFT] ||
			PulsedInputState.menu[KEY_MENU_RIGHT])
	{	// Does nothing, but counts as input for timeout purposes
		LastInputTime = GetTimeCounter ();
	}
	else if (MouseButtonDown)
	{
		Flash_pause(pMS->flashContext);
		DoPopupWindow (GAME_STRING (MAINMENU_STRING_BASE + 54));
				// Mouse not supported message
		SetMenuSounds (MENU_SOUND_UP | MENU_SOUND_DOWN, MENU_SOUND_SELECT);	
		SetTransitionSource (NULL);
		BatchGraphics ();
		DrawRestartMenuGraphic (pMS);
		DrawRestartMenu (pMS, pMS->CurState, pMS->CurFrame, FALSE);
		ScreenTransition (3, NULL);
		UnbatchGraphics ();
		Flash_continue(pMS->flashContext);

		LastInputTime = GetTimeCounter ();
	}
	else
	{	// No input received, check if timed out
		// JMS: After changing resolution mode, prevent displaying credits
		// (until the next time the game is restarted). This is to prevent
		// showing the credits with the wrong resolution mode's font&background.
		if (GetTimeCounter () - LastInputTime > InactTimeOut
			&& !optRequiresRestart && PacksInstalled())
		{
			SleepThreadUntil (FadeMusic (0, ONE_SECOND/2));
			StopMusic ();
			FadeMusic (NORMAL_VOLUME, 0);

			GLOBAL (CurrentActivity) = (ACTIVITY)~0;
			return FALSE;
		}
	}
	comingFromInit = FALSE;
	SleepThreadUntil (TimeIn + ONE_SECOND / 30);

	return TRUE;
}
Ejemplo n.º 24
0
int ChooseFxCard (void)
{
	short field;
	short	key;
	int   rval = 0;

	switch ( newc.d.card )
	{
		default:
		case M_NONE:
			field = DCARD_NONE;
			break;

#ifndef HERETIC
		case M_PC:
			field = DCARD_PC;
			break;
#endif

		case M_GUS:
			field = DCARD_GUS;
			break;

		case M_SB:
			field = DCARD_SB;
			break;

		case M_PAS:
			field = DCARD_PAS;
			break;

		case M_WAVE:
			field = DCARD_SB;
			break;
	}

	SaveScreen();
	DrawPup(&idcard);
	idcardmenu.startitem = field;

	while(1)
	{
		SetupMenu(&idcardmenu);
		field = GetMenuInput();
		key = menukey;
		switch ( key )
		{
			case KEY_ESC:
				rval = -1;
				goto func_exit;

			case KEY_ENTER:
			case KEY_F10:
			switch ( field )
			{
				case DCARD_PAS:
					newc.d.card = M_PAS;
					goto func_exit;

				case DCARD_SB:
					newc.d.card = M_SB;
					goto func_exit;

				case DCARD_GUS:
					newc.d.card = M_GUS;
					newc.d.midiport   = -1;
					goto func_exit;

#ifndef HERETIC
				case DCARD_PC:
					newc.d.card       = M_PC;
					newc.d.port       = -1;
					newc.d.midiport   = -1;
					newc.d.irq        = -1;
					newc.d.dma        = -1;
					goto func_exit;
#endif
				case DCARD_NONE:
					newc.d.card = M_NONE;
					newc.d.port       = -1;
					newc.d.midiport   = -1;
					newc.d.irq        = -1;
					newc.d.dma        = -1;
					goto func_exit;

				default:
					break;
			}
				break;
		}
	}

	func_exit:

	RestoreScreen();
	return ( rval );
}
Ejemplo n.º 25
0
int ChooseSbIrq (DMXCARD * card)
{
	short field;
	short	key;
	int   rval = 0;

	if ( card->irq > 8 )
		ErrorWindow(&irqerr);

	switch ( card->irq )
	{
		case 2:
			field = SB_IRQ_2;
			break;

		default:
		case 5:
			field = SB_IRQ_5;
			break;

		case 7:
			field = SB_IRQ_7;
			break;

	}

	SaveScreen();
	DrawPup(&sbirq);
	sbirqmenu.startitem = field;

	while(1)
	{
		SetupMenu(&sbirqmenu);
		field = GetMenuInput();
		key = menukey;
		switch ( key )
		{
			case KEY_ESC:
				rval = -1;
				goto func_exit;

			case KEY_ENTER:
			case KEY_F10:
			switch ( field )
			{
				case SB_IRQ_2:
					card->irq = 2;
					goto func_exit;

				case SB_IRQ_5:
					card->irq = 5;
					goto func_exit;

				case SB_IRQ_7:
					card->irq = 7;
					goto func_exit;

				default:
					break;
			}
				break;
		}
	}

	func_exit:

	RestoreScreen();
	return ( rval );
}
Ejemplo n.º 26
0
unsigned WarpTime(void)
{
	int   e;
	int   l;
	short	key;
	short field;
	int   exit;


	SaveScreen();
	DrawPup(&cwarp);

	SetMark(&cwarpitems[W_RESPAWN],respawn);
	SetMark(&cwarpitems[W_NOMON],nomonsters);
	#ifndef HERETIC
	SetMark(&cwarpitems[W_DM2],deathmatch2);
	#endif

	exit = 0;

	while(1)
	{
		SetupMenu(&cwarpmenu);
		field = GetMenuInput();
		key = menukey;

		switch(key)
		{
			case KEY_ESC:
				RestoreScreen();
				return 0;

			case KEY_F10:
			case KEY_ENTER:

				switch(field)
				{
					case E1M1: e=1;l=1; exit=1; break;
					case E1M2: e=1;l=2; exit=1; break;
					case E1M3: e=1;l=3; exit=1; break;
					case E1M4: e=1;l=4; exit=1; break;
					case E1M5: e=1;l=5; exit=1; break;
					case E1M6: e=1;l=6; exit=1; break;
					case E1M7: e=1;l=7; exit=1; break;
					case E1M8: e=1;l=8; exit=1; break;
					case E1M9: e=1;l=9; exit=1; break;
					#ifdef DOOM2
					case E1M10: e=1;l=10; exit=1; break;
					#endif

					case E2M1: e=2;l=1; exit=1; break;
					case E2M2: e=2;l=2; exit=1; break;
					case E2M3: e=2;l=3; exit=1; break;
					case E2M4: e=2;l=4; exit=1; break;
					case E2M5: e=2;l=5; exit=1; break;
					case E2M6: e=2;l=6; exit=1; break;
					case E2M7: e=2;l=7; exit=1; break;
					case E2M8: e=2;l=8; exit=1; break;
					case E2M9: e=2;l=9; exit=1; break;
					#ifdef DOOM2
					case E2M10: e=2;l=10; exit=1; break;
					#endif

					case E3M1: e=3;l=1; exit=1; break;
					case E3M2: e=3;l=2; exit=1; break;
					case E3M3: e=3;l=3; exit=1; break;
					case E3M4: e=3;l=4; exit=1; break;
					case E3M5: e=3;l=5; exit=1; break;
					case E3M6: e=3;l=6; exit=1; break;
					case E3M7: e=3;l=7; exit=1; break;
					case E3M8: e=3;l=8; exit=1; break;
					case E3M9: e=3;l=9; exit=1; break;
					#ifdef DOOM2
					case E3M10: e=3;l=10; exit=1; break;
					#endif

					case W_RESPAWN:
						respawn ^= 1;
						SetMark(&cwarpitems[W_RESPAWN],respawn);
						break;

					case W_NOMON:
						nomonsters ^= 1;
						SetMark(&cwarpitems[W_NOMON],nomonsters);
						break;
					#ifndef HERETIC
					case W_DM2:
						deathmatch2 ^= 1;
						SetMark(&cwarpitems[W_DM2],deathmatch2);
						break;
					#endif
				}

				if (exit)
				{
					RestoreScreen();
					#ifdef DOOM2
					return ((e-1)*10+l);
					#else
					return (e<<8)+l;
					#endif
				}
		 }
	}
}
Ejemplo n.º 27
0
void ParticleEditor::LoadEditor()
{
	m_sphereSprite = m_provider->GetVideo()->CreateSprite(m_provider->GetFileIOHub()->GetProgramDirectory() + "/" + BSPHERE_BMP);
	ResetSystem();
	SetupMenu();
}
Ejemplo n.º 28
0
int ChooseNumDig (void)
{
	short	key;
	short field;
	int   rval = 0;

	SaveScreen();
	DrawPup(&numdig);

	// DEFAULT FIELD ========================================

	switch ( newc.numdig )
	{
		default:
			field = DIG_4;
			break;

		case 1:
			field = DIG_1;
			break;

		case 2:
			field = DIG_2;
			break;

		case 3:
			field = DIG_3;
			break;

		case 4:
			field = DIG_4;
			break;

		case 5:
			field = DIG_5;
			break;

		case 6:
			field = DIG_6;
			break;

		case 7:
			field = DIG_7;
			break;

		case 8:
			field = DIG_8;
			break;
	}
	numdigmenu.startitem = field;

	while(1)
	{
		SetupMenu(&numdigmenu);
		field = GetMenuInput();
		key = menukey;
		switch ( key )
		{
			case KEY_ESC:
				rval = -1;
				goto func_exit;

			case KEY_ENTER:
			case KEY_F10:
			switch ( field )
			{
				case DIG_1:
					newc.numdig = 1;
					goto func_exit;

				case DIG_2:
					newc.numdig = 2;
					goto func_exit;

				case DIG_3:
					newc.numdig = 3;
					goto func_exit;

				case DIG_4:
					newc.numdig = 4;
					goto func_exit;

				case DIG_5:
					newc.numdig = 5;
					goto func_exit;

				case DIG_6:
					newc.numdig = 6;
					goto func_exit;

				case DIG_7:
					newc.numdig = 7;
					goto func_exit;

				case DIG_8:
					newc.numdig = 8;
					goto func_exit;

				default:
					break;
			}
				break;
		}
	}

	func_exit:

	RestoreScreen();
	return ( rval );
}