[Src]->Friends List.

Codes submitted by developers and people of outpost. Come here to get codes for your client sources.
Post Reply
Drajwer
<3 bd long time
Posts: 841
Joined: Fri Dec 10, 2004 3:24 pm

Post by Drajwer »

Image

first add some voids and vars to Game.h:

Code: Select all

void LoadFriendList();//drajwer -friendlist
void SaveFriendList();//drajewr -friendlist	
void DrawDialogBox_FriendList(short msX, short msY);//43
void DlgBoxClick_FriendList(short msX, short msY); // 43 - drajwer


char m_cFriends[13][10];
int m_iTotalFriends;
int m_iFriendIndex;
int m_iFriendIndex2; //dunno about that but its work :)

and Game.cpp:

Code: Select all

void CGame::DrawDialogBox_FriendList(short msX, short msY)//43
{
short sX, sY, szX,szY;
	int y,j;
	char cTxt[120];
	char cNicks[13];
	int nickheight=16;
	COLORREF tmpColor;
	sX = m_stDialogBoxInfo[43].sX;
	sY = m_stDialogBoxInfo[43].sY;
	szX = m_stDialogBoxInfo[43].sSizeX;	
    szY = m_stDialogBoxInfo[43].sSizeY;
	DrawNewDialogBox(DEF_SPRID_INTERFACE_ND_GAME2, sX, sY, 2);
	PutString_SprFont(sX+90,sY+35,"Friend list",1,1,8);
	switch (m_stDialogBoxInfo[43].cMode) {
	case 0:
	int i=0;
	for (i=0;i<m_iTotalFriends;i++) {
   if (m_cFriends[i] != NULL) {
  y=sY+45+((i+1)*nickheight);
  PutString(sX+25,y,m_cFriends[i],RGB(0,0,0));
   }
	}  
	if (m_iFriendIndex != -1) {
	PutString(sX+25,sY+45+(m_iFriendIndex*nickheight),m_cFriends[m_iFriendIndex-1],RGB(255,255,255));
  m_stDialogBoxInfo[43].sV1=m_iFriendIndex-1;
        wsprintf(cTxt,"Player name: %s",m_cFriends[m_iFriendIndex-1]);
  m_iFriendIndex2=m_iFriendIndex-1;
  PutString(sX+25,sY+45+(13*nickheight),cTxt,RGB(0,0,0));
  if ((msX>sX+25) && (msX<sX+25+25) && (msY>sY+45+14*nickheight) && (msY<sY+45+15*nickheight)) {
  PutString(sX+25,sY+45+(14*nickheight),"Add",RGB(255,255,255));
  }
  else {
  	PutString(sX+25,sY+45+(14*nickheight),"Add",RGB(0,0,0));
  }
  if ((msX>sX+80) && (msX<sX+80+30) && (msY>sY+45+14*nickheight) && (msY<sY+45+15*nickheight)) {  
  PutString(sX+80,sY+45+(14*nickheight),"Delete",RGB(255,255,255));
  }
  else {
  PutString(sX+80,sY+45+(14*nickheight),"Delete",RGB(0,0,0));
  }
  if ((msX>sX+140) && (msX<sX+140+45) && (msY>sY+45+14*nickheight) && (msY<sY+45+15*nickheight)) {  
  PutString(sX+140,sY+45+(14*nickheight),"Whisper",RGB(255,255,255));
  }
  else {
  PutString(sX+140,sY+45+(14*nickheight),"Whisper",RGB(0,0,0));
  }
	}
    break;
	}
}
void CGame::DlgBoxClick_FriendList(short msX, short msY) // 43 - drajwer
{

	short sX, sY, szX,szY;	
	int tmp,i;
	char cTxt[100];
	
	sX = m_stDialogBoxInfo[43].sX;
	sY = m_stDialogBoxInfo[43].sY;
	szX = m_stDialogBoxInfo[43].sSizeX;	
    szY = m_stDialogBoxInfo[43].sSizeY;
	if ((msX>sX+25) && (msX<sX+szX-25)&&(msY>sY+45+16)&&(msY<sY+45+(13)*16)) {
  tmp=msY-sY-45-16;
  tmp=tmp/16;
  tmp++;
  if (strcmp(m_cFriends[tmp-1],"") != 0) { //izzit not empty?
  m_iFriendIndex=tmp;
    
  }
  else {
  m_iFriendIndex=-1;
  	}
  return;
	}
	if ((msX>sX+25) && (msX<sX+25+25) && (msY>sY+45+14*16) && (msY<sY+45+15*16)) {
  if (m_iTotalFriends==12) {
  	AddEventList("You can not have more than 12 friends in list.",10);
  	return;
  }
    m_bIsGetPointingMode = TRUE;
    m_iPointCommandType  = 250;
    PlaySound('E', 14, 5);
    AddEventList("Click the character which you want to add.",10); //pointing mode 
      return;
  }
  if ((msX>sX+80) && (msX<sX+80+30) && (msY>sY+45+14*16) && (msY<sY+45+15*16)) {  
  for (i=m_iFriendIndex2+1;i<13;i++) { //simple delete
  	ZeroMemory(cTxt,sizeof(cTxt)); //just move down elements
  	memcpy(cTxt,m_cFriends[i],10);
  	ZeroMemory(m_cFriends[i-1],sizeof(m_cFriends[i-1]));
  	memcpy(m_cFriends[i-1],cTxt,10);
  	}
  	m_iTotalFriends--;
  	SaveFriendList();
  }

  if ((msX>sX+140) && (msX<sX+140+45) && (msY>sY+45+14*16) && (msY<sY+45+15*16)) {
  ZeroMemory(cTxt,sizeof(cTxt));
  wsprintf(cTxt,"/to %s",m_cFriends[m_iFriendIndex2]);
  	bSendCommand(MSGID_COMMAND_CHATMSG, NULL, NULL, NULL, NULL, NULL, cTxt);
  }
}
void CGame::SaveFriendList()
{
	FILE* f=fopen("contents\\FriendList.txt","w");
	int i;
	char wr[12];
	for (i=0;i<m_iTotalFriends;i++) {
	ZeroMemory(wr,sizeof(wr));
	wsprintf(wr,"%s\n",m_cFriends[i]);
	fputs(wr,f);
	}
fclose(f);
}
void CGame::LoadFriendList() //some polish friends helped me.
{
  char buf[1024];
  int konieclinii;
  unsigned long linie=0;
  FILE* f=fopen("contents\\FriendList.txt","rt");
  m_iTotalFriends=0;
  while(fgets(buf,1024,f)){
    konieclinii=0;
    int i=strlen(buf);
    if(i>0 && buf[--i]=='\n'){
      buf[i]=0; // kasujemy znak konca linii
      konieclinii=1;
      linie++;
    }
	if (linie-1<13) {
	strcpy(m_cFriends[linie-1],buf);
	m_iTotalFriends++;
	}
  }
if (m_iTotalFriends>12) m_iTotalFriends=12;
  fclose(f);
}

ok dialog drawings loading and dlg events are done, now we must call that:

OnKeyUp add case:

Code: Select all

case 70: //'F'
  if (m_bCtrlPressed == TRUE && m_cGameMode == DEF_GAMEMODE_ONMAINGAME && (!m_bInputStatus) )
  EnableDialogBox(43, NULL, NULL, NULL);	
  break;
now you can view your list by pressing ctrl+f.

next:
_bCheckDlgBoxClick add case:

Code: Select all

  case 43:
    DlgBoxClick_FriendList(msX, msY);
    break;
  	}
DrawDialogBoxs add case:

Code: Select all

	case 43:
  	DrawDialogBox_FriendList(msX,msY); //drajwer: friendlist
  	break;

EnableDialogBox add case:

Code: Select all

case 43:
  m_iFriendIndex = -1;
  m_stDialogBoxInfo[43].sV1=0;
  break;
_iCheckDlgBoxFocus add case:

Code: Select all

	case 43: // Drajwer - friendlist s
    	m_stMCursor.cSelectedObjectType	= DEF_SELECTEDOBJTYPE_DLGBOX;
    	m_stMCursor.sSelectedObjectID   = cDlgID;
    	break;
    	

and a Pointing Command Handler add b4 end:

Code: Select all

	else if (m_iPointCommandType == 250) 
	{	if ((strlen(m_cMCName) == 0) || (strcmp(m_cMCName, m_cPlayerName) == 0) || (m_cMCName[0] == '_')) {
  	PlaySound('E', 14, 5);
  }else 
  {
  	PlaySound('E', 14, 5);
  	memcpy(m_cFriends[m_iTotalFriends],m_cMCName,10);
  	m_iTotalFriends++;
  	m_stDialogBoxInfo[43].sV1=0;
  	SaveFriendList();
  	return;
	}	}

Homework:

- do some server side stuff like "[nick] added you to his friend list."
- do server-side ask and client-side dialog to accepting joining.
- do server-side storing list.

enjoy.
<img src='http://img440.imageshack.us/img440/2627/15pt.jpg' border='0' alt='user posted image' /><br><br>HBPolska characters:<br><br>Hellios 150+ Aresden Hero Mage<br>TheBill 120 Aresden plrider<br>Kill_Me 100 Full-Hero plrider<br>Rockeater 110+ Aresden Plate Mage<br><br><a href='http://www.helbreath.org' target='_blank'>http://www.helbreath.org</a> come and play (250 ppl online)
siemprefuertes
just visiting
Posts: 5
Joined: Sun Jan 01, 2006 7:24 pm

Post by siemprefuertes »

Add to give rep- or + and enemy list xD


And .... one list for see the ppl of you guild is posible?


Sry for my bad english :unsure:
€M4NU€L
Outpost bitch
Posts: 517
Joined: Sat Nov 19, 2005 9:07 pm
Location: I watch gay porn
Contact:

Post by €M4NU€L »

I don't understand a shit about where to add the codes :lol:
<span style='color:blue'>Helbreath Thermal</span> <span style='color:green'>BETA</span> <span style='color:red'>Soon</span>:<br><br>www.youporngay.com<br><br><img src='http://img264.imageshack.us/img264/1041 ... piopk7.jpg' border='0' alt='user posted image' /><br><img src='http://img257.imageshack.us/img257/3762 ... eakxj1.jpg' border='0' alt='user posted image' /><br><img src='http://arthur.crepin.free.fr/images/use ... mpsons.png' border='0' alt='user posted image' /><br><img src='http://img329.imageshack.us/img329/5797/pesgamerrr3.gif' border='0' alt='user posted image' /><br><br><u><b>BLACK GAY LIST:</b></u><br><br><span style='color:red'>€M4NU€L</span>:<br>I look like a girl and he's always complaining someone.
Drajwer
&lt;3 bd long time
Posts: 841
Joined: Fri Dec 10, 2004 3:24 pm

Post by Drajwer »

guild member list is cool but simple imposible without main login src(possible if you host logins and all hgs).

omg emanuel its simple...
<img src='http://img440.imageshack.us/img440/2627/15pt.jpg' border='0' alt='user posted image' /><br><br>HBPolska characters:<br><br>Hellios 150+ Aresden Hero Mage<br>TheBill 120 Aresden plrider<br>Kill_Me 100 Full-Hero plrider<br>Rockeater 110+ Aresden Plate Mage<br><br><a href='http://www.helbreath.org' target='_blank'>http://www.helbreath.org</a> come and play (250 ppl online)
€M4NU€L
Outpost bitch
Posts: 517
Joined: Sat Nov 19, 2005 9:07 pm
Location: I watch gay porn
Contact:

Post by €M4NU€L »

Drawjer explain better how to add the things in the Client or HGServer can you do that for me ? :P
<span style='color:blue'>Helbreath Thermal</span> <span style='color:green'>BETA</span> <span style='color:red'>Soon</span>:<br><br>www.youporngay.com<br><br><img src='http://img264.imageshack.us/img264/1041 ... piopk7.jpg' border='0' alt='user posted image' /><br><img src='http://img257.imageshack.us/img257/3762 ... eakxj1.jpg' border='0' alt='user posted image' /><br><img src='http://arthur.crepin.free.fr/images/use ... mpsons.png' border='0' alt='user posted image' /><br><img src='http://img329.imageshack.us/img329/5797/pesgamerrr3.gif' border='0' alt='user posted image' /><br><br><u><b>BLACK GAY LIST:</b></u><br><br><span style='color:red'>€M4NU€L</span>:<br>I look like a girl and he's always complaining someone.
Drajwer
&lt;3 bd long time
Posts: 841
Joined: Fri Dec 10, 2004 3:24 pm

Post by Drajwer »

its client-side only.
<img src='http://img440.imageshack.us/img440/2627/15pt.jpg' border='0' alt='user posted image' /><br><br>HBPolska characters:<br><br>Hellios 150+ Aresden Hero Mage<br>TheBill 120 Aresden plrider<br>Kill_Me 100 Full-Hero plrider<br>Rockeater 110+ Aresden Plate Mage<br><br><a href='http://www.helbreath.org' target='_blank'>http://www.helbreath.org</a> come and play (250 ppl online)
€M4NU€L
Outpost bitch
Posts: 517
Joined: Sat Nov 19, 2005 9:07 pm
Location: I watch gay porn
Contact:

Post by €M4NU€L »

Drajwer wrote: its client-side only.
I see but i'm still searching where to put the codes ... :lol:

Too many Void things where should i add it down or up of the first Void that shows in game.h
<span style='color:blue'>Helbreath Thermal</span> <span style='color:green'>BETA</span> <span style='color:red'>Soon</span>:<br><br>www.youporngay.com<br><br><img src='http://img264.imageshack.us/img264/1041 ... piopk7.jpg' border='0' alt='user posted image' /><br><img src='http://img257.imageshack.us/img257/3762 ... eakxj1.jpg' border='0' alt='user posted image' /><br><img src='http://arthur.crepin.free.fr/images/use ... mpsons.png' border='0' alt='user posted image' /><br><img src='http://img329.imageshack.us/img329/5797/pesgamerrr3.gif' border='0' alt='user posted image' /><br><br><u><b>BLACK GAY LIST:</b></u><br><br><span style='color:red'>€M4NU€L</span>:<br>I look like a girl and he's always complaining someone.
joeri
Member
Posts: 126
Joined: Sat Mar 04, 2006 1:19 am

Post by joeri »

thanks alot drawjer :)
visit a cool site <a href='http://technohell.net' target='_blank'>here</a><br><br><img src='http://i5.photobucket.com/albums/y184/J ... hnoFan.jpg' border='0' alt='user posted image' /><br><img src='http://i5.photobucket.com/albums/y184/Joeri696/240.jpg' border='0' alt='user posted image' /><br><img src='http://i5.photobucket.com/albums/y184/Joeri696/255.jpg' border='0' alt='user posted image' /><br><img src='http://i5.photobucket.com/albums/y184/Joeri696/326.jpg' border='0' alt='user posted image' /><br><br>Diuuude fan :D<br>Go Diuuude Go :D
Drajwer
&lt;3 bd long time
Posts: 841
Joined: Fri Dec 10, 2004 3:24 pm

Post by Drajwer »

who is "drawjer" ?
<img src='http://img440.imageshack.us/img440/2627/15pt.jpg' border='0' alt='user posted image' /><br><br>HBPolska characters:<br><br>Hellios 150+ Aresden Hero Mage<br>TheBill 120 Aresden plrider<br>Kill_Me 100 Full-Hero plrider<br>Rockeater 110+ Aresden Plate Mage<br><br><a href='http://www.helbreath.org' target='_blank'>http://www.helbreath.org</a> come and play (250 ppl online)
joeri
Member
Posts: 126
Joined: Sat Mar 04, 2006 1:19 am

Post by joeri »

srry drajwer :D :D
visit a cool site <a href='http://technohell.net' target='_blank'>here</a><br><br><img src='http://i5.photobucket.com/albums/y184/J ... hnoFan.jpg' border='0' alt='user posted image' /><br><img src='http://i5.photobucket.com/albums/y184/Joeri696/240.jpg' border='0' alt='user posted image' /><br><img src='http://i5.photobucket.com/albums/y184/Joeri696/255.jpg' border='0' alt='user posted image' /><br><img src='http://i5.photobucket.com/albums/y184/Joeri696/326.jpg' border='0' alt='user posted image' /><br><br>Diuuude fan :D<br>Go Diuuude Go :D
€M4NU€L
Outpost bitch
Posts: 517
Joined: Sat Nov 19, 2005 9:07 pm
Location: I watch gay porn
Contact:

Post by €M4NU€L »

Drajwer can you help me on this code ?

I want to make the Guild Requirements Level 100 & 100,000 Gold can you post me the codes ?
<span style='color:blue'>Helbreath Thermal</span> <span style='color:green'>BETA</span> <span style='color:red'>Soon</span>:<br><br>www.youporngay.com<br><br><img src='http://img264.imageshack.us/img264/1041 ... piopk7.jpg' border='0' alt='user posted image' /><br><img src='http://img257.imageshack.us/img257/3762 ... eakxj1.jpg' border='0' alt='user posted image' /><br><img src='http://arthur.crepin.free.fr/images/use ... mpsons.png' border='0' alt='user posted image' /><br><img src='http://img329.imageshack.us/img329/5797/pesgamerrr3.gif' border='0' alt='user posted image' /><br><br><u><b>BLACK GAY LIST:</b></u><br><br><span style='color:red'>€M4NU€L</span>:<br>I look like a girl and he's always complaining someone.
Drajwer
&lt;3 bd long time
Posts: 841
Joined: Fri Dec 10, 2004 3:24 pm

Post by Drajwer »

easy fix in hg server.
<img src='http://img440.imageshack.us/img440/2627/15pt.jpg' border='0' alt='user posted image' /><br><br>HBPolska characters:<br><br>Hellios 150+ Aresden Hero Mage<br>TheBill 120 Aresden plrider<br>Kill_Me 100 Full-Hero plrider<br>Rockeater 110+ Aresden Plate Mage<br><br><a href='http://www.helbreath.org' target='_blank'>http://www.helbreath.org</a> come and play (250 ppl online)
€M4NU€L
Outpost bitch
Posts: 517
Joined: Sat Nov 19, 2005 9:07 pm
Location: I watch gay porn
Contact:

Post by €M4NU€L »

Drajwer wrote: easy fix in hg server.
I check all the Guild in Game.cpp from HGServer Sources but didn't find anything thats why i ask you !!
<span style='color:blue'>Helbreath Thermal</span> <span style='color:green'>BETA</span> <span style='color:red'>Soon</span>:<br><br>www.youporngay.com<br><br><img src='http://img264.imageshack.us/img264/1041 ... piopk7.jpg' border='0' alt='user posted image' /><br><img src='http://img257.imageshack.us/img257/3762 ... eakxj1.jpg' border='0' alt='user posted image' /><br><img src='http://arthur.crepin.free.fr/images/use ... mpsons.png' border='0' alt='user posted image' /><br><img src='http://img329.imageshack.us/img329/5797/pesgamerrr3.gif' border='0' alt='user posted image' /><br><br><u><b>BLACK GAY LIST:</b></u><br><br><span style='color:red'>€M4NU€L</span>:<br>I look like a girl and he's always complaining someone.
Drajwer
&lt;3 bd long time
Posts: 841
Joined: Fri Dec 10, 2004 3:24 pm

Post by Drajwer »

make new topic, dont trash mine. got codes.
<img src='http://img440.imageshack.us/img440/2627/15pt.jpg' border='0' alt='user posted image' /><br><br>HBPolska characters:<br><br>Hellios 150+ Aresden Hero Mage<br>TheBill 120 Aresden plrider<br>Kill_Me 100 Full-Hero plrider<br>Rockeater 110+ Aresden Plate Mage<br><br><a href='http://www.helbreath.org' target='_blank'>http://www.helbreath.org</a> come and play (250 ppl online)
SlammeR
Loyal fan
Posts: 219
Joined: Fri Nov 04, 2005 1:52 am
Location: Brazil

Post by SlammeR »

<3 Drajwer

Awesome! great job ^^
OWNED!<br><img src='http://img50.imageshack.us/img50/1386/p ... 3vsqn2.gif' border='0' alt='user posted image' /><br><br><img src="http://hbtop50.com/button.php?u=hbuonline" alt="Helbreath Top 50 - Keepin' it real." border="0" /><br><a href='http://www.hbuonline.net' target='_blank'>Helbreath United</a>
Post Reply