From 4d1da44edbffcdd9ccc4334147e89cf701b35bb6 Mon Sep 17 00:00:00 2001 From: Chris Danford Date: Tue, 3 Dec 2002 07:20:41 +0000 Subject: [PATCH] Added song discovery (untested) --- stepmania/src/smlobby/resource2.h | 3 +- stepmania/src/smlobby/smlobby.aps | Bin 24544 -> 40268 bytes stepmania/src/smlobby/smlobby.clw | 161 +++++++++++++++++++++++++-- stepmania/src/smlobby/smlobby.dsp | 10 +- stepmania/src/smlobby/smlobby.ncb | Bin 181245 -> 38 bytes stepmania/src/smlobby/smlobby.opt | Bin 48640 -> 53760 bytes stepmania/src/smlobby/smlobby.rc | 6 +- stepmania/src/smlobby/smlobbyDlg.cpp | 61 ++++++++-- stepmania/src/smlobby/smlobbyDlg.h | 1 + 9 files changed, 223 insertions(+), 19 deletions(-) diff --git a/stepmania/src/smlobby/resource2.h b/stepmania/src/smlobby/resource2.h index 5330f69c89..4d48c59d58 100644 --- a/stepmania/src/smlobby/resource2.h +++ b/stepmania/src/smlobby/resource2.h @@ -37,6 +37,7 @@ #define IDC_XFERSTATUS 1022 #define IDC_TOFROM 1023 #define IDC_SENTRECVD 1024 +#define IDC_COMBO1 1030 // Next default values for new objects // @@ -44,7 +45,7 @@ #ifndef APSTUDIO_READONLY_SYMBOLS #define _APS_NEXT_RESOURCE_VALUE 136 #define _APS_NEXT_COMMAND_VALUE 32771 -#define _APS_NEXT_CONTROL_VALUE 1029 +#define _APS_NEXT_CONTROL_VALUE 1031 #define _APS_NEXT_SYMED_VALUE 101 #endif #endif diff --git a/stepmania/src/smlobby/smlobby.aps b/stepmania/src/smlobby/smlobby.aps index aa0b621399db72c89baeddb94d26b47b3dbc6624..56bdef1325f3029af641196678ff2555719701a5 100644 GIT binary patch delta 9203 zcmb7KYiu0Xbsmxusi&>9d`o4^XaELM?i)xwr6}5wmGk$V{?t7u?>%!e z`R&}PmGk$UUA^Ou&&2KUxl_^4Te_l);g)MVTK{0CaY#{=0VTQ;c1NS7p$0{{7@aJ2 zG;H6XL=Tou_S}SR^dF^tH>DX}4sS+t?d!{j>uyT)>+ff_TzfpnxcG@ zbXSylrKIHH`$r!gu7gHN?by5lTm1V!nD*T1^Q-rtJ9RoUd>4|t=T<*??&Lka#+kFH z]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 Hmd^hLK!ydE delta 1017 zcmcgrJ!n%=6#m{z^4eN|3k?!%NJ*61Vp60?twNI~kqTA{(jW8@$zQceYGPuDf+h~Z z!J4G;5QuFChYlsU)NDo2v6hbFC?XEUK{7ZvHJ1_D{V!~M?vzH`2NF8AKuE%EDn zVZ|g275gn`WxzQm2mO)7SRyE=qVaGd=Jf|4vZ5E~7;oI9gHAa_%N4>^wlru=ZXDD+S31v9ERMz`{2g?^fU%TOCBlr^>a(rZm^ z_vH(bewXWg&&B}@fJw|@g0a!q<{219msZ>?6~;5`LTkpyW`-ImRR^O>>%)BUVXr|0N9 zZDws0Thofe0_|t5(jM3CiBw%Pigg|BFpPH44~EAbmUJKk2x>m^Mnvk9jvk PgLb2&+)Q?k(yPWlJ7XnH diff --git a/stepmania/src/smlobby/smlobby.clw b/stepmania/src/smlobby/smlobby.clw index 89793f5ffb..0bbee9e060 100644 --- a/stepmania/src/smlobby/smlobby.clw +++ b/stepmania/src/smlobby/smlobby.clw @@ -7,11 +7,11 @@ LastTemplate=CDialog NewFileInclude1=#include "stdafx.h" NewFileInclude2=#include "smlobby.h" -ClassCount=4 +ClassCount=2 Class1=CSmlobbyApp Class2=CSmlobbyDlg -ResourceCount=211 +ResourceCount=355 Resource2=IDR_MAINFRAME Resource3=IDD_CONNECT (Unknown language: 0xD Resource4=IDD_CONNECT (Unknown language: 0xD @@ -218,10 +218,154 @@ Resource204=IDD_CONNECT (Unknown language: 0xD Resource205=IDD_CONNECT (Unknown language: 0xD Resource206=IDD_CONNECT (Unknown language: 0xD Resource207=IDD_CONNECT (Unknown language: 0xD -Resource208=IDD_ABOUTBOX -Resource209=IDD_SMLOBBY_DIALOG -Resource210=IDD_FILEXFER -Resource211=IDD_CONNECT (Unknown language: 0xD, 0x1) +Resource208=IDD_CONNECT (Unknown language: 0xD +Resource209=IDD_CONNECT (Unknown language: 0xD +Resource210=IDD_CONNECT (Unknown language: 0xD +Resource211=IDD_CONNECT (Unknown language: 0xD +Resource212=IDD_CONNECT (Unknown language: 0xD +Resource213=IDD_CONNECT (Unknown language: 0xD +Resource214=IDD_CONNECT (Unknown language: 0xD +Resource215=IDD_CONNECT (Unknown language: 0xD +Resource216=IDD_CONNECT (Unknown language: 0xD +Resource217=IDD_CONNECT (Unknown language: 0xD +Resource218=IDD_CONNECT (Unknown language: 0xD +Resource219=IDD_CONNECT (Unknown language: 0xD +Resource220=IDD_CONNECT (Unknown language: 0xD +Resource221=IDD_CONNECT (Unknown language: 0xD +Resource222=IDD_CONNECT (Unknown language: 0xD +Resource223=IDD_CONNECT (Unknown language: 0xD +Resource224=IDD_CONNECT (Unknown language: 0xD +Resource225=IDD_CONNECT (Unknown language: 0xD +Resource226=IDD_CONNECT (Unknown language: 0xD +Resource227=IDD_CONNECT (Unknown language: 0xD +Resource228=IDD_CONNECT (Unknown language: 0xD +Resource229=IDD_CONNECT (Unknown language: 0xD +Resource230=IDD_CONNECT (Unknown language: 0xD +Resource231=IDD_CONNECT (Unknown language: 0xD +Resource232=IDD_CONNECT (Unknown language: 0xD +Resource233=IDD_CONNECT (Unknown language: 0xD +Resource234=IDD_CONNECT (Unknown language: 0xD +Resource235=IDD_CONNECT (Unknown language: 0xD +Resource236=IDD_CONNECT (Unknown language: 0xD +Resource237=IDD_CONNECT (Unknown language: 0xD +Resource238=IDD_CONNECT (Unknown language: 0xD +Resource239=IDD_CONNECT (Unknown language: 0xD +Resource240=IDD_CONNECT (Unknown language: 0xD +Resource241=IDD_CONNECT (Unknown language: 0xD +Resource242=IDD_CONNECT (Unknown language: 0xD +Resource243=IDD_CONNECT (Unknown language: 0xD +Resource244=IDD_CONNECT (Unknown language: 0xD +Resource245=IDD_CONNECT (Unknown language: 0xD +Resource246=IDD_CONNECT (Unknown language: 0xD +Resource247=IDD_CONNECT (Unknown language: 0xD +Resource248=IDD_CONNECT (Unknown language: 0xD +Resource249=IDD_CONNECT (Unknown language: 0xD +Resource250=IDD_CONNECT (Unknown language: 0xD +Resource251=IDD_CONNECT (Unknown language: 0xD +Resource252=IDD_CONNECT (Unknown language: 0xD +Resource253=IDD_CONNECT (Unknown language: 0xD +Resource254=IDD_CONNECT (Unknown language: 0xD +Resource255=IDD_CONNECT (Unknown language: 0xD +Resource256=IDD_CONNECT (Unknown language: 0xD +Resource257=IDD_CONNECT (Unknown language: 0xD +Resource258=IDD_CONNECT (Unknown language: 0xD +Resource259=IDD_CONNECT (Unknown language: 0xD +Resource260=IDD_CONNECT (Unknown language: 0xD +Resource261=IDD_CONNECT (Unknown language: 0xD +Resource262=IDD_CONNECT (Unknown language: 0xD +Resource263=IDD_CONNECT (Unknown language: 0xD +Resource264=IDD_CONNECT (Unknown language: 0xD +Resource265=IDD_CONNECT (Unknown language: 0xD +Resource266=IDD_CONNECT (Unknown language: 0xD +Resource267=IDD_CONNECT (Unknown language: 0xD +Resource268=IDD_CONNECT (Unknown language: 0xD +Resource269=IDD_CONNECT (Unknown language: 0xD +Resource270=IDD_CONNECT (Unknown language: 0xD +Resource271=IDD_CONNECT (Unknown language: 0xD +Resource272=IDD_CONNECT (Unknown language: 0xD +Resource273=IDD_CONNECT (Unknown language: 0xD +Resource274=IDD_CONNECT (Unknown language: 0xD +Resource275=IDD_CONNECT (Unknown language: 0xD +Resource276=IDD_CONNECT (Unknown language: 0xD +Resource277=IDD_CONNECT (Unknown language: 0xD +Resource278=IDD_CONNECT (Unknown language: 0xD +Resource279=IDD_CONNECT (Unknown language: 0xD +Resource280=IDD_CONNECT (Unknown language: 0xD +Resource281=IDD_CONNECT (Unknown language: 0xD +Resource282=IDD_CONNECT (Unknown language: 0xD +Resource283=IDD_CONNECT (Unknown language: 0xD +Resource284=IDD_CONNECT (Unknown language: 0xD +Resource285=IDD_CONNECT (Unknown language: 0xD +Resource286=IDD_CONNECT (Unknown language: 0xD +Resource287=IDD_CONNECT (Unknown language: 0xD +Resource288=IDD_CONNECT (Unknown language: 0xD +Resource289=IDD_CONNECT (Unknown language: 0xD +Resource290=IDD_CONNECT (Unknown language: 0xD +Resource291=IDD_CONNECT (Unknown language: 0xD +Resource292=IDD_CONNECT (Unknown language: 0xD +Resource293=IDD_CONNECT (Unknown language: 0xD +Resource294=IDD_CONNECT (Unknown language: 0xD +Resource295=IDD_CONNECT (Unknown language: 0xD +Resource296=IDD_CONNECT (Unknown language: 0xD +Resource297=IDD_CONNECT (Unknown language: 0xD +Resource298=IDD_CONNECT (Unknown language: 0xD +Resource299=IDD_CONNECT (Unknown language: 0xD +Resource300=IDD_CONNECT (Unknown language: 0xD +Resource301=IDD_CONNECT (Unknown language: 0xD +Resource302=IDD_CONNECT (Unknown language: 0xD +Resource303=IDD_CONNECT (Unknown language: 0xD +Resource304=IDD_CONNECT (Unknown language: 0xD +Resource305=IDD_CONNECT (Unknown language: 0xD +Resource306=IDD_CONNECT (Unknown language: 0xD +Resource307=IDD_CONNECT (Unknown language: 0xD +Resource308=IDD_CONNECT (Unknown language: 0xD +Resource309=IDD_CONNECT (Unknown language: 0xD +Resource310=IDD_CONNECT (Unknown language: 0xD +Resource311=IDD_CONNECT (Unknown language: 0xD +Resource312=IDD_CONNECT (Unknown language: 0xD +Resource313=IDD_CONNECT (Unknown language: 0xD +Resource314=IDD_CONNECT (Unknown language: 0xD +Resource315=IDD_CONNECT (Unknown language: 0xD +Resource316=IDD_CONNECT (Unknown language: 0xD +Resource317=IDD_CONNECT (Unknown language: 0xD +Resource318=IDD_CONNECT (Unknown language: 0xD +Resource319=IDD_CONNECT (Unknown language: 0xD +Resource320=IDD_CONNECT (Unknown language: 0xD +Resource321=IDD_CONNECT (Unknown language: 0xD +Resource322=IDD_CONNECT (Unknown language: 0xD +Resource323=IDD_CONNECT (Unknown language: 0xD +Resource324=IDD_CONNECT (Unknown language: 0xD +Resource325=IDD_CONNECT (Unknown language: 0xD +Resource326=IDD_CONNECT (Unknown language: 0xD +Resource327=IDD_CONNECT (Unknown language: 0xD +Resource328=IDD_CONNECT (Unknown language: 0xD +Resource329=IDD_CONNECT (Unknown language: 0xD +Resource330=IDD_CONNECT (Unknown language: 0xD +Resource331=IDD_CONNECT (Unknown language: 0xD +Resource332=IDD_CONNECT (Unknown language: 0xD +Resource333=IDD_CONNECT (Unknown language: 0xD +Resource334=IDD_CONNECT (Unknown language: 0xD +Resource335=IDD_CONNECT (Unknown language: 0xD +Resource336=IDD_CONNECT (Unknown language: 0xD +Resource337=IDD_CONNECT (Unknown language: 0xD +Resource338=IDD_CONNECT (Unknown language: 0xD +Resource339=IDD_CONNECT (Unknown language: 0xD +Resource340=IDD_CONNECT (Unknown language: 0xD +Resource341=IDD_CONNECT (Unknown language: 0xD +Resource342=IDD_CONNECT (Unknown language: 0xD +Resource343=IDD_CONNECT (Unknown language: 0xD +Resource344=IDD_CONNECT (Unknown language: 0xD +Resource345=IDD_CONNECT (Unknown language: 0xD +Resource346=IDD_CONNECT (Unknown language: 0xD +Resource347=IDD_CONNECT (Unknown language: 0xD +Resource348=IDD_CONNECT (Unknown language: 0xD +Resource349=IDD_CONNECT (Unknown language: 0xD +Resource350=IDD_CONNECT (Unknown language: 0xD +Resource351=IDD_CONNECT (Unknown language: 0xD +Resource352=IDD_ABOUTBOX +Resource353=IDD_SMLOBBY_DIALOG +Resource354=IDD_FILEXFER +Resource355=IDD_CONNECT (Unknown language: 0xD, 0x1) [CLS:CSmlobbyApp] Type=0 @@ -234,6 +378,9 @@ Type=0 HeaderFile=smlobbyDlg.h ImplementationFile=smlobbyDlg.cpp Filter=D +BaseClass=CDialog +VirtualFilter=dWC +LastObject=CSmlobbyDlg @@ -248,7 +395,7 @@ Control4=IDC_LIST_GAMES,listbox,1352728835 Control5=IDC_STATIC,button,1342177287 Control6=IDC_EDIT_GAME_INFO,edit,1350631428 Control7=IDC_STATIC,button,1342177287 -Control8=IDC_COMBO_MUSIC,combobox,1344340226 +Control8=IDC_COMBO_MUSIC,combobox,1344340227 Control9=IDC_STATIC,static,1342308352 Control10=IDC_BUTTON_CREATE_GAME,button,1342242816 Control11=IDC_LIST_USERS,listbox,1352728835 diff --git a/stepmania/src/smlobby/smlobby.dsp b/stepmania/src/smlobby/smlobby.dsp index 6394bd7c10..72e578deac 100644 --- a/stepmania/src/smlobby/smlobby.dsp +++ b/stepmania/src/smlobby/smlobby.dsp @@ -63,7 +63,7 @@ LINK32=link.exe # PROP BASE Target_Dir "" # PROP Use_MFC 6 # PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" +# PROP Output_Dir "../../" # PROP Intermediate_Dir "Debug" # PROP Ignore_Export_Lib 0 # PROP Target_Dir "" @@ -108,6 +108,10 @@ SOURCE=.\irc.cpp # End Source File # Begin Source File +SOURCE=.\RageUtil.cpp +# End Source File +# Begin Source File + SOURCE=.\SendFileDialog.cpp # End Source File # Begin Source File @@ -148,6 +152,10 @@ SOURCE=.\irc.h # End Source File # Begin Source File +SOURCE=.\RageUtil.h +# End Source File +# Begin Source File + SOURCE=.\resource2.h # End Source File # Begin Source File diff --git a/stepmania/src/smlobby/smlobby.ncb b/stepmania/src/smlobby/smlobby.ncb index eb0a0381466eea5a1befe918655199e250273f2a..954d0534b5d80900b97be4a9cc747808a6a10c9c 100644 GIT binary patch delta 6 Ncmey{&aE~<4FC#z0&D;P literal 181245 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

Un;nfNgwQJ(nD10I;Z!LQHJjH>S_&W6ea(NTh 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 T|0p2-pZI_B{NMTe{NKL;StCl3 literal 48640 zcmeHQO>-Pa8E$<>l5JVG<*$T5CnokPwj4>0V{9i*RvnVdWnc_fk%7H2uHx3j~#Sbu?AXg3?Aeg6jcBGZGUTNjH9I|h3 zJ?d7!Z};2%Oz+Bh(%t)~KkmE#i(fzeSGFNtVqNUN5BgbeU3~}264f-sV1MvHmcv|@ zQAO$hh=GqWR*vV^1#|;FfPCgp0ewI}FaYcVpcDTtKhNH0e`eoge|bzXK0Dq1ogL}w#DAFF|Cir+|L8A2I}@Xs5Cg;jF+dCu z1D_xRo`{TGBjy@JV$lkuE5ibXrxkL?&IxMsr%kzb+I@ z_qjq%}2%HKImL`F0!OSo6UKfEXYK+LZy)|49F<-;hZ9Uwi3)jm}@s;zY8IbII~t^j7J4 zoIjR#1q7#$w|D;dIoWCL{BZ)O=o74f^VcP2A>smFt(-tVg7e>D?CqX^KG`6?tlCK$ z*g^cWGEi;)3TCZi_8x8xFmVR`7UQ@(pe6oWp8xB0@w;&TJ3RZ{U)_p*)fBgSUR5)> zOM7d_zJtBl!V7Af*&4U#i<_2M>-M?X@LV}RQHyZm0w3pP*SUc`-VtwPPZ)R+4ZYoY zr{Wrd%U-ekT;IcnQSW4NP#a=^7$63S0b*ds43PfY z3U#Faw!#+q5(C5lF+dEoD+8qelKxBjZ+Kxrct*c{_J4luqhRCb!BBD=<+G-JW`f7W zLS<=Jtv0yuv5zU)K%;ByeRyLZIbjJLLznk${##xwTTPAIN}rE<^eQMiQfjPv599_ zQQ&gSVWz}HS=dEk8!NcI!q;&jhPy6wFo57^b*}V-7$63S0b+m{SYv?nzcntlE|LDX zHAmz@3=jjv05L!ekp4&dAL)Oj|84&E8mYjAI|Jpu&JKJZ6zPApZHT1*(VtFYfEXYK zh=Iq<0O^0N5KQ`CD{PT3F+dCu1H?ePGC=wt>3^jEwXgmce*g1>2h|;Risi+vVjf=w z9ZG-lgK>rQKidD-u74qE-oyYgKny%721x&Fg?ZBdT49TPi2-7O7$64Pl>yTKNdF`K zuYL8u815WgU=_B6mtbzoAA|dMaR1?D8KrjrVGMUZ8i-#)bes9O2eGv@jQc11&_o_D z-tPU6nha5kFN=?wTD^brQR8iF|0wYX@clnQdInh!>v*GIo>q1pYgCc-au;YHYWIY- zldjNjh8CRF{>H(W?(66W=Fx?jynvh zg^93mCM>+n*dNg3_tiIwY)pw5AO?tmbqtXHyN-@6ej)vL3xdc@3=jjv05L!efC18f zN&hANw|({BUWgA+@p@Qy2m8soPekPz zid_1IWto3~F9o`R`k%vJmObR})ynT9m-Vubzt!>&*RYhV5E Ef3c|UPXGV_ diff --git a/stepmania/src/smlobby/smlobby.rc b/stepmania/src/smlobby/smlobby.rc index d19e2597ec..7c3a20c88d 100644 --- a/stepmania/src/smlobby/smlobby.rc +++ b/stepmania/src/smlobby/smlobby.rc @@ -88,7 +88,7 @@ IDD_SMLOBBY_DIALOG DIALOGEX 0, 0, 464, 330 STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU EXSTYLE WS_EX_APPWINDOW CAPTION "StepMania Lobby" -FONT 8, "MS Sans Serif", 0, 0, 0x1 +FONT 8, "MS Sans Serif" BEGIN EDITTEXT IDC_EDIT_ENTRY,105,281,347,12,ES_AUTOHSCROLL GROUPBOX "Chat",IDC_STATIC,5,140,453,160 @@ -98,8 +98,8 @@ BEGIN GROUPBOX "Game Information",IDC_STATIC,143,5,107,130 EDITTEXT IDC_EDIT_GAME_INFO,153,20,90,105,ES_MULTILINE GROUPBOX "Create New Game",IDC_STATIC,271,5,185,130 - COMBOBOX IDC_COMBO_MUSIC,278,35,170,15,CBS_DROPDOWN | CBS_SORT | - WS_VSCROLL | WS_TABSTOP + COMBOBOX IDC_COMBO_MUSIC,278,35,170,88,CBS_DROPDOWNLIST | + CBS_SORT | WS_VSCROLL | WS_TABSTOP LTEXT "Select Music:",IDC_STATIC,278,25,44,10 PUSHBUTTON "Create Game",IDC_BUTTON_CREATE_GAME,338,100,56,20 LISTBOX IDC_LIST_USERS,10,155,85,140,LBS_SORT | diff --git a/stepmania/src/smlobby/smlobbyDlg.cpp b/stepmania/src/smlobby/smlobbyDlg.cpp index b3fbf0d2f3..c9bd30c482 100644 --- a/stepmania/src/smlobby/smlobbyDlg.cpp +++ b/stepmania/src/smlobby/smlobbyDlg.cpp @@ -4,6 +4,7 @@ #include "stdafx.h" #include "smlobby.h" #include "smlobbyDlg.h" +#include "RageUtil.h" #ifdef _DEBUG #define new DEBUG_NEW @@ -84,6 +85,7 @@ void CSmlobbyDlg::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(CSmlobbyDlg) + DDX_Control(pDX, IDC_COMBO_MUSIC, m_comboMusic); DDX_Control(pDX, IDC_EDIT_GAME_NAME, m_editGameName); DDX_Control(pDX, IDC_EDIT_GAME_INFO, m_editGameInfo); DDX_Control(pDX, IDC_LIST_USERS, m_listUsers); @@ -189,6 +191,41 @@ BOOL CSmlobbyDlg::OnInitDialog() return FALSE; + // + // populate drop-down list of songs + // + CString sDir = "Songs"; // search only in "Songs" directory in program folder + + // Find all group directories in "Songs" folder + CStringArray arrayGroupDirs; + GetDirListing( sDir+"\\*.*", arrayGroupDirs, true ); + SortCStringArray( arrayGroupDirs ); + + for( unsigned i=0; i< arrayGroupDirs.GetSize(); i++ ) // for each dir in /Songs/ + { + CString sGroupDirName = arrayGroupDirs[i]; + + if( 0 == stricmp( sGroupDirName, "cvs" ) ) // the directory called "CVS" + continue; // ignore it + + // Find all Song folders in this group directory + CStringArray arraySongDirs; + GetDirListing( ssprintf("%s\\%s\\*.*", sDir, sGroupDirName), arraySongDirs, true ); + SortCStringArray( arraySongDirs ); + + for( unsigned j=0; j< arraySongDirs.GetSize(); j++ ) // for each song dir + { + CString sSongDirName = arraySongDirs[j]; + + if( 0 == stricmp( sSongDirName, "cvs" ) ) // the directory called "CVS" + continue; // ignore it + + CString sSongDir = ssprintf("%s\\%s\\%s", sDir, sGroupDirName, sSongDirName); + + m_comboMusic.AddString( sSongDir ); + } + } + return TRUE; // return TRUE unless you set the focus to a control } @@ -588,14 +625,24 @@ void CSmlobbyDlg::OnButtonCreateGame() sprintf(host_ip_str, "%d.%d.%d.%d", ip[0], ip[1], ip[2], ip[3]); //Insert song name/hash code here - char songHash[12] = "0x00000000"; + + int iIndex = m_comboMusic.GetCurSel(); + if( iIndex <= 0 ) + ASSERT(0); // what do we do here? + CString sSongDir; + m_comboMusic.GetLBText( iIndex, sSongDir ); + unsigned long hash = GetHashForDirectory( sSongDir ); + //Now tell the server our game info - g_ircSession << irc::CIrcMessage(CString("topic #") + gameName + CString(" :") - + gameName + CString(" ") - + CString(host_ip_str) + CString(" ") - + CString(g_ircSession.GetInfo().sNick.c_str()) + CString(" ") - + CString(songHash)); + CString sIrcMessage = ssprintf( "topic #%s :%s %s %s %u", + gameName, + gameName, + host_ip_str, + g_ircSession.GetInfo().sNick.c_str(), + hash ); + + g_ircSession << irc::CIrcMessage(sIrcMessage); } bool CSmlobbyDlg::IsUniqueGameName(const CString GameName) @@ -649,4 +696,4 @@ CString CSmlobbyDlg::SelectFolder() } return CString(szPath); -} \ No newline at end of file +} diff --git a/stepmania/src/smlobby/smlobbyDlg.h b/stepmania/src/smlobby/smlobbyDlg.h index 741750a096..72db976783 100644 --- a/stepmania/src/smlobby/smlobbyDlg.h +++ b/stepmania/src/smlobby/smlobbyDlg.h @@ -26,6 +26,7 @@ public: // Dialog Data //{{AFX_DATA(CSmlobbyDlg) enum { IDD = IDD_SMLOBBY_DIALOG }; + CComboBox m_comboMusic; CEdit m_editGameName; CEdit m_editGameInfo; CListBox m_listUsers;