In Void Cgame::statechangehandler...

All Helbreath Server Source Discussion here.
Post Reply
juanduran
noob
Posts: 19
Joined: Sat Dec 04, 2004 1:21 am

Post by juanduran »

In void CGame::StateChangeHandler(...) these variables are not changing....

m_pClientList[iClientH]->m_iStr -= cStr;
m_pClientList[iClientH]->m_iVit -= cVit;
m_pClientList[iClientH]->m_iDex -= cDex;
m_pClientList[iClientH]->m_iInt -= cInt;
m_pClientList[iClientH]->m_iMag -= cMag;
m_pClientList[iClientH]->m_iCharisma -= cChar;

how to fix??? plz post an answer :(
juggalo2
Spamtastic
Posts: 1144
Joined: Sun Jul 17, 2005 5:28 pm

Post by juggalo2 »


works for me and dont forget the button invis you soudl know where it is and make sure you have mj points with the char you try make sure at lested 3 mj

Code: Select all

void CGame::StateChangeHandler(int iClientH, char * pData, DWORD dwMsgSize)
{
 char * cp, cStateChange1, cStateChange2, cStateChange3;
 char cStr, cVit, cDex, cInt, cMag, cChar;
 char cStateTxt[512];
 int iOldStr, iOldVit, iOldDex, iOldInt, iOldMag, iOldChar;
 int iTotalSetting = 0;
	
	if (m_pClientList[iClientH] == NULL) return;
	if (m_pClientList[iClientH]->m_bIsInitComplete == FALSE) return;
	if (m_pClientList[iClientH]->m_iGizonItemUpgradeLeft <= 0) return;

	cStr = cVit = cDex = cInt = cMag = cChar = 0;

	cp = (char *)(pData + DEF_INDEX2_MSGTYPE + 2);

	cStateChange1 = *cp;
	cp++;

	cStateChange2 = *cp;
	cp++;

	cStateChange3 = *cp;
	cp++;

	iOldStr	= m_pClientList[iClientH]->m_iStr;
	iOldVit	= m_pClientList[iClientH]->m_iVit;
	iOldDex = m_pClientList[iClientH]->m_iDex;
	iOldInt = m_pClientList[iClientH]->m_iInt;
	iOldMag = m_pClientList[iClientH]->m_iMag;
	iOldChar = m_pClientList[iClientH]->m_iCharisma;
	
	
	wsprintf(G_cTxt, "(*) Char(%s) Str(%d) Vit(%d) Dex(%d) Int(%d) Mag(%d) Chr(%d) ", m_pClientList[iClientH]->m_cCharName, m_pClientList[iClientH]->m_iStr, m_pClientList[iClientH]->m_iVit, m_pClientList[iClientH]->m_iDex, m_pClientList[iClientH]->m_iInt, m_pClientList[iClientH]->m_iMag, m_pClientList[iClientH]->m_iCharisma);
	PutLogList(G_cTxt);
//	wsprintf(G_cTxt, "(*)   ");
//	PutLogList(G_cTxt);
//	wsprintf(G_cTxt, "(*) Char(%s) Str(%d) Vit(%d) Dex(%d) Int(%d) Mag(%d) Chr(%d) ", m_pClientList[iClientH]->m_cCharName, m_pClientList[iClientH]->m_iStr, m_pClientList[iClientH]->m_iVit, m_pClientList[iClientH]->m_iDex, m_pClientList[iClientH]->m_iInt, m_pClientList[iClientH]->m_iMag, m_pClientList[iClientH]->m_iCharisma,  );
//	PutLogList(G_cTxt);
	
	
	if(!bChangeState(cStateChange1,&cStr,&cVit,&cDex,&cInt,&cMag,&cChar))
	{
  //Ŭ¶óÀ̾ðÆ®¿¡¼­ °ªÀ» À߸ø º¸³»¿Âµí...
  SendNotifyMsg(NULL, iClientH, DEF_NOTIFY_STATECHANGE_FAILED, NULL, NULL, NULL, NULL);
  return;
	}
	if(!bChangeState(cStateChange2,&cStr,&cVit,&cDex,&cInt,&cMag,&cChar))
	{
  //Ŭ¶óÀ̾ðÆ®¿¡¼­ °ªÀ» À߸ø º¸³»¿Âµí...
  SendNotifyMsg(NULL, iClientH, DEF_NOTIFY_STATECHANGE_FAILED, NULL, NULL, NULL, NULL);
  return;
	}
	if(!bChangeState(cStateChange3,&cStr,&cVit,&cDex,&cInt,&cMag,&cChar))
	{
  //Ŭ¶óÀ̾ðÆ®¿¡¼­ °ªÀ» À߸ø º¸³»¿Âµí...
  SendNotifyMsg(NULL, iClientH, DEF_NOTIFY_STATECHANGE_FAILED, NULL, NULL, NULL, NULL);
  return;
	}

	//±æµå ¸¶½ºÅÃ￾¸é cChar¸¦ ¸ø ³»¸°´Ù..
	if(m_pClientList[iClientH]->m_iGuildRank == 0 )
	{
  if(m_pClientList[iClientH]->m_iCharisma - cChar < 20)
  {
  	//Ŭ¶óÀ̾ðÆ®¿¡¼­ °ªÀ» À߸ø º¸³»¿Âµí...
  	SendNotifyMsg(NULL, iClientH, DEF_NOTIFY_STATECHANGE_FAILED, NULL, NULL, NULL, NULL);
  	return;
  }
	}

	//Ư¼ºÄ¡ °ªÀÌ ·¹º§°ú ¸ÂÃ￾ö ¾Ê´Ù¸é ³»¸±¼ö ¾ø´Ù..
	if(iOldStr +iOldVit	+iOldDex +iOldInt +iOldMag +iOldChar != (179*3 + 70))
	{
  //ÇØÅ·ÀÌ´Ù... Ŭ¶óÀ̾ðÆ®¿¡¼­ ¸øº¸³»°Ô µÇ¾î ÀÖ´Ù ±Ùµ¥ ¿Ô´Ù¸é ÇØÅ·...
  return;
	}


	if(cStr < 0 || cVit < 0 || cDex < 0 || cInt < 0 || cMag < 0 || cChar < 0
  || cStr + cVit + cDex + cInt + cMag + cChar != 3)
	{
  SendNotifyMsg(NULL, iClientH, DEF_NOTIFY_STATECHANGE_FAILED, NULL, NULL, NULL, NULL);
  return;
	}

	// Ư¼ºÄ¡°ªÀÌ 10ÀÌÇÃ￾·Î ¸ø³»·Ã￾ °£´Ù... Ã￾¦ÇÑÀ» ³ÑÀ»¼öµµ ¾ø´Ù...
	if ((m_pClientList[iClientH]->m_iStr - cStr > DEF_CHARPOINTLIMIT) 
   || (m_pClientList[iClientH]->m_iStr - cStr < 10)) 
	{
  SendNotifyMsg(NULL, iClientH, DEF_NOTIFY_STATECHANGE_FAILED, NULL, NULL, NULL, NULL);
  return;
	}

	if ((m_pClientList[iClientH]->m_iDex - cDex > DEF_CHARPOINTLIMIT) 
   || (m_pClientList[iClientH]->m_iDex - cDex < 10)) 
	{
  SendNotifyMsg(NULL, iClientH, DEF_NOTIFY_STATECHANGE_FAILED, NULL, NULL, NULL, NULL);
  return;
	}

	if ((m_pClientList[iClientH]->m_iInt - cInt > DEF_CHARPOINTLIMIT) 
   || (m_pClientList[iClientH]->m_iInt - cInt < 10)) 
	{
  SendNotifyMsg(NULL, iClientH, DEF_NOTIFY_STATECHANGE_FAILED, NULL, NULL, NULL, NULL);
  return;
	}

	if ((m_pClientList[iClientH]->m_iVit - cVit > DEF_CHARPOINTLIMIT) 
   || (m_pClientList[iClientH]->m_iVit - cVit < 10)) 
	{
  SendNotifyMsg(NULL, iClientH, DEF_NOTIFY_STATECHANGE_FAILED, NULL, NULL, NULL, NULL);
  return;
	}

	if ((m_pClientList[iClientH]->m_iMag - cMag > DEF_CHARPOINTLIMIT) 
   || (m_pClientList[iClientH]->m_iMag - cMag < 10)) 
	{
  SendNotifyMsg(NULL, iClientH, DEF_NOTIFY_STATECHANGE_FAILED, NULL, NULL, NULL, NULL);
  return;
	}

	if ((m_pClientList[iClientH]->m_iCharisma - cChar > DEF_CHARPOINTLIMIT)
   || (m_pClientList[iClientH]->m_iCharisma - cChar < 10)) 
	{
  SendNotifyMsg(NULL, iClientH, DEF_NOTIFY_STATECHANGE_FAILED, NULL, NULL, NULL, NULL);
  return;
	}

	if (m_pClientList[iClientH]->m_iLU_Pool < 3) m_pClientList[iClientH]->m_iLU_Pool = 3;

	// ¿À·ù°¡ ¾øÀ¸¸é °ªÀ» ÇÒ´çÇÑ´Ù.
	//m_pClientList[iClientH]->m_iLU_Pool += 3;
	
	m_pClientList[iClientH]->m_iGizonItemUpgradeLeft--;

	m_pClientList[iClientH]->m_iStr  -= cStr;
	m_pClientList[iClientH]->m_iVit  -= cVit;
	m_pClientList[iClientH]->m_iDex  -= cDex;
	m_pClientList[iClientH]->m_iInt  -= cInt;
	//2003-04-22ÀÃ￾ ¸¶¹ýÀ» ȏÃ￾¦ ½ÃŲ´Ù.... ÀÎÆ®°¡ ³»·Ã￾°¡°í ³ª¼­ µ¹¾Æ°¡¾ß ÇÑ´Ù...
	if(cInt > 0)
  bCheckMagicInt(iClientH);
	m_pClientList[iClientH]->m_iMag  -= cMag;
	m_pClientList[iClientH]->m_iCharisma -= cChar;

	ZeroMemory(cStateTxt,sizeof(cStateTxt));

	wsprintf(cStateTxt, "STR(%d->%d)VIT(%d->%d)DEX(%d->%d)INT(%d->%d)MAG(%d->%d)CHARISMA(%d->%d)",
  iOldStr, m_pClientList[iClientH]->m_iStr,
  iOldVit, m_pClientList[iClientH]->m_iVit,
  iOldDex, m_pClientList[iClientH]->m_iDex,
  iOldInt, m_pClientList[iClientH]->m_iInt,
  iOldMag, m_pClientList[iClientH]->m_iMag,
  iOldChar,m_pClientList[iClientH]->m_iCharisma    
  );

	//_bCustomLog(DEF_ITEMLOG_CUSTOM,iClientH,NULL,cStateTxt);

	//2003-04-22ÀÃ￾ ½ºÅ³À» ³»·Ã￾°¡°Ô ÇÑ´Ù... 
	//bCheckSkillState(iClientH);

	//¼º°ø..!!!
	SendNotifyMsg(NULL, iClientH, DEF_NOTIFY_STATECHANGE_SUCCESS, NULL, NULL, NULL, NULL);
}
<img src='http://lifeplaysu420.com/unknow/nightsign.png' border='0' alt='user posted image' /><br>~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~<br>Wanna make money for surfing the net sing up at <br><a href='http://www.cashfiesta.com/php/join.php? ... yprivitera' target='_blank'>cash fiesta</a><br>its all free hey why ntot make money while fucking around on the computer<br><br><br>~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Cleroth
Loyal fan
Posts: 416
Joined: Wed Jun 16, 2004 7:08 pm

Post by Cleroth »

Stop posting noob shits juggalo.

Code: Select all

 m_pClientList[iClientH]->m_iStr -= cStr;
The variable that changes is the first one. cStr won't change.

m_pClientList[iClientH]->m_iStr -= cStr;
is same as
m_pClientList[iClientH]->m_iStr = m_pClientList[iClientH]->m_iStr - cStr;
<img src='http://ic1.deviantart.com/fs11/i/2006/1 ... leroth.gif' border='0' alt='user posted image' />
juanduran
noob
Posts: 19
Joined: Sat Dec 04, 2004 1:21 am

Post by juanduran »

Look the screenshot... why doesnt 3 points... :(


Image

Here i less 3 points of Dex


Image

Here i add 3 points to Vit


Image

Here i see my stats... and :huh: the Dex is not discounted... :(

Somebody can help me? why the points are not discounted :'( i think BOOL CGame::bChangeState(...) isnt added to StateChangeHandler..help plz
juggalo2
Spamtastic
Posts: 1144
Joined: Sun Jul 17, 2005 5:28 pm

Post by juggalo2 »

Cleroth wrote: Stop posting noob shits juggalo.

Code: Select all

 m_pClientList[iClientH]->m_iStr -= cStr;
The variable that changes is the first one. cStr won't change.

m_pClientList[iClientH]->m_iStr -= cStr;
is same as
m_pClientList[iClientH]->m_iStr = m_pClientList[iClientH]->m_iStr - cStr;
stfu thats my stats changer i got in my source it work fine for me.

make sure you take 3 stats off at ounce then press ok
then wait for teh lvl up to shwo then add the 3 stats
<img src='http://lifeplaysu420.com/unknow/nightsign.png' border='0' alt='user posted image' /><br>~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~<br>Wanna make money for surfing the net sing up at <br><a href='http://www.cashfiesta.com/php/join.php? ... yprivitera' target='_blank'>cash fiesta</a><br>its all free hey why ntot make money while fucking around on the computer<br><br><br>~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
juanduran
noob
Posts: 19
Joined: Sat Dec 04, 2004 1:21 am

Post by juanduran »

<_<
Post Reply