Weapon Glow Char selection

08/27/2016 10:22 Mike Oxmaul#1
WndTitle.cpp
CWndSelectChar::Ondraw
pModel->Render( p2DRender->m_pd3dDevice, &matWorld );
Code:
#ifdef __LOGIN_GLOW
           
            
			ItemProp * pItemProp2 = prj.GetItemProp(g_Neuz.m_apPlayer[i]->m_aEquipInfo[PARTS_RWEAPON].dwId);
			ItemProp * pItemProp3 = prj.GetItemProp(g_Neuz.m_apPlayer[i]->m_aEquipInfo[PARTS_LWEAPON].dwId);
			DWORD dwItemKind3Right = 0;
			DWORD dwItemKind3Left = 0;

			if(pItemProp2 && pItemProp2->dwItemKind3)
				dwItemKind3Right = pItemProp2->dwItemKind3;

			if(pItemProp3 && pItemProp3->dwItemKind3)
				dwItemKind3Left = pItemProp3->dwItemKind3;

			int nAttr	   = (g_Neuz.m_apPlayer[i]->m_aEquipInfo[PARTS_RWEAPON].nOption & 0x00FF0000) >> 16;
			int nAttrLevel = (g_Neuz.m_apPlayer[i]->m_aEquipInfo[PARTS_RWEAPON].nOption & 0xFF000000) >> 24;
			int nLevel = g_Neuz.m_apPlayer[i]->m_aEquipInfo[PARTS_RWEAPON].nOption & 0xFF;

			nLevel <<= 24;

			int nAttr2	   = (g_Neuz.m_apPlayer[i]->m_aEquipInfo[PARTS_LWEAPON].nOption & 0x00FF0000) >> 16;
			int nAttrLevel2 = (g_Neuz.m_apPlayer[i]->m_aEquipInfo[PARTS_LWEAPON].nOption & 0xFF000000) >> 24;
			int nLevel2 = g_Neuz.m_apPlayer[i]->m_aEquipInfo[PARTS_LWEAPON].nOption & 0xFF;

			nLevel2 <<= 24;

			DWORD dwItemFire = XE_ITEM_FIRE;
			DWORD dwItemElec = XE_ITEM_ELEC;
			DWORD dwItemWater = XE_ITEM_WATER;
			DWORD dwItemWind = XE_ITEM_WIND;
			DWORD dwItemEarth = XE_ITEM_EARTH;
			DWORD dwItemNone = XE_ITEM_GEN;

			switch( nAttr )
				{
#if __VER >= 9 // __Y_ADV_ENCHANT_EFFECT
				case 0:						pModel->SetEffect( PARTS_RWEAPON, dwItemNone  | nLevel );	break;	
#endif //__Y_ADV_ENCHANT_EFFECT
				case SAI79::FIRE:			pModel->SetEffect( PARTS_RWEAPON, dwItemFire | nLevel );	break;	
				case SAI79::ELECTRICITY:	pModel->SetEffect( PARTS_RWEAPON, dwItemElec | nLevel );	break;
				case SAI79::WATER:			pModel->SetEffect( PARTS_RWEAPON, dwItemWater | nLevel );	break;
				case SAI79::WIND:			pModel->SetEffect( PARTS_RWEAPON, dwItemWind | nLevel );	break;
				case SAI79::EARTH:			pModel->SetEffect( PARTS_RWEAPON, dwItemEarth | nLevel );	break;
				}

			switch( nAttr2 )
				{
#if __VER >= 9 // __Y_ADV_ENCHANT_EFFECT
				case 0:						pModel->SetEffect( PARTS_LWEAPON, dwItemNone  | nLevel2 );	break;	
#endif //__Y_ADV_ENCHANT_EFFECT
				case SAI79::FIRE:			pModel->SetEffect( PARTS_LWEAPON, dwItemFire | nLevel2 );	break;	
				case SAI79::ELECTRICITY:	pModel->SetEffect( PARTS_LWEAPON, dwItemElec | nLevel2 );	break;
				case SAI79::WATER:			pModel->SetEffect( PARTS_LWEAPON, dwItemWater | nLevel2 );	break;
				case SAI79::WIND:			pModel->SetEffect( PARTS_LWEAPON, dwItemWind | nLevel2 );	break;
				case SAI79::EARTH:			pModel->SetEffect( PARTS_LWEAPON, dwItemEarth | nLevel2 );	break;
				}

			pModel->RenderEffect( p2DRender->m_pd3dDevice, &matWorld, dwItemKind3Left, dwItemKind3Right, nAttrLevel2,nAttrLevel  );  
#endif
CWndSelectChar::UpdateCharacter()
Code:
#ifdef __LOGIN_GLOW
			CMover::UpdateParts( pMover->GetSex(), pMover->m_dwSkinSet, pMover->m_dwFace, pMover->m_dwHairMesh, pMover->m_dwHeadMesh, pMover->m_aEquipInfo, m_pBipedMesh[ i ], NULL, 1, NULL );
#else
			CMover::UpdateParts( pMover->GetSex(), pMover->m_dwSkinSet, pMover->m_dwFace, pMover->m_dwHairMesh, pMover->m_dwHeadMesh, pMover->m_aEquipInfo, m_pBipedMesh[ i ], NULL/*&pMover->m_Inventory*/ );
#endif
DPLoginClient.cpp
void CDPLoginClient::OnPlayerList( CAr & ar )

Code:
g_Neuz.m_apPlayer[slot]->m_aEquipInfo[nParts].dwId	= dwItemId;
#ifdef __LOGIN_GLOW
			int nOption = 0;
			ar >> nOption;
			g_Neuz.m_apPlayer[slot]->m_aEquipInfo[nParts].nOption = nOption;
#endif
DBManager.cpp
void CDbManager::SendPlayerList( CQuery* qry, LPDB_OVERLAPPED_PLUS lpDbOverlappedPlus )

Code:
if( pItemProp->dwParts == i || pItemProp->dwPartsub == i ||
							( pItemProp->dwParts == PARTS_RWEAPON && i == PARTS_LWEAPON ) )
						{
							arbuf << i;
							arbuf << pItemElem->m_dwItemId;
#ifdef __LOGIN_GLOW
							int nRet = pItemElem->GetOption();
							int nAttr = (int)pItemElem->m_bItemResist;
							int nOption = pItemElem->m_nResistAbilityOption;
	
							nRet |= (nAttr << 16);		
							nRet |= (nOption << 24);	

							arbuf << nRet;
#endif
ModelObject.cpp
void CModelObject::RenderEffect( LPDIRECT3DDEVICE9 pd3dDevice, const D3DXMATRIX *mWorld, DWORD dwItemKind3, int nLevelL, int nLeveR )
Code:
#ifndef __LOGIN_GLOW
if( CObj::GetActiveObj() )
#endif
define __LOGIN_GLOW Neuz & DbServer

only workin with v17 glows, v15 glows need to relog to be visible
08/27/2016 10:32 ImpreZz1994#2
Nice finde es echt gut das du Jupsi auch mal wieder was releast :)
08/28/2016 02:32 .SnoX#3
Solltest vorher pItemProp2 und 3 abchecken ob sie überhaupt vorhanden sind bevor du sie aufrufst.
08/28/2016 04:56 Houyi201cz#4
Upload photo please :D
08/28/2016 10:20 Mike Oxmaul#5
Quote:
Originally Posted by .SnoX View Post
Solltest vorher pItemProp2 und 3 abchecken ob sie überhaupt vorhanden sind bevor du sie aufrufst.
tu ich doch?

if(pItemProp2 &&


if(pItemProp3 && ..
11/22/2016 22:29 NoWay | Phoenix#6
Screens / Video ? :)
11/22/2016 22:34 - DK#7
Quote:
Originally Posted by NoWay | Phoenix View Post
Screens / Video ? :)
Bei der Charakter Auswahl wird einfach nur der Glow bei der Waffen geladen.
11/23/2016 00:53 NoWay | Phoenix#8
Quote:
Originally Posted by .ACE. View Post
Bei der Charakter Auswahl wird einfach nur der Glow bei der Waffen geladen.
Ist mir schon klar, ich möchte nur wissen ob es laags verursacht bzw. ob es dort verpixelt angezeigt wird oder nicht.
bzw. wie es dort angezeigt wird ^^
11/23/2016 06:25 -Venom'#9
Quote:
Originally Posted by NoWay | Phoenix View Post
Ist mir schon klar, ich möchte nur wissen ob es laags verursacht bzw. ob es dort verpixelt angezeigt wird oder nicht.
bzw. wie es dort angezeigt wird ^^
Einfach einbauen und testen ?
Dann siehst du doch was passiert.
12/16/2016 15:25 goinhell95#10
How fix this?
No glow on stand char
[Only registered and activated users can see links. Click Here To Register...]
12/16/2016 18:08 Mike Oxmaul#11
it's bug from the v17 glow system itself. add D3DXMatrixScaling to the Worldmatrix of the Glow with the scale of your Weapon
09/10/2019 12:57 Biborsschwester#12
hallo habe eine frage ,weis jetzt nicht wo ich die stellen könnte aber der post hier schaut mir ganz gut aus dafür, also ich habe paar waffen auf meinem Privaten,privaten server xD eingebaut und bei den wird aber das element nicht angezeigt wenn ich die mit element upgrade , wie kann ich das Problem beheben^^
09/10/2019 14:59 Naltalah#13
Quote:
Originally Posted by Biborsschwester View Post
hallo habe eine frage ,weis jetzt nicht wo ich die stellen könnte aber der post hier schaut mir ganz gut aus dafür, also ich habe paar waffen auf meinem Privaten,privaten server xD eingebaut und bei den wird aber das element nicht angezeigt wenn ich die mit element upgrade , wie kann ich das Problem beheben^^
Sobald Modelle durch ATools gejagt wurden bzw. dadrüber importiert wurden, werden alte Element Glows und zum Teil auch die neuen nicht mehr unterstützt. Wurde mir mal irgendwann auch nur so gesagt, woran es tatsächlich liegt oder wie genau das behoben werden kann, weiß ich leider auch nicht.
09/10/2019 16:21 Biborsschwester#14
schade^^
09/21/2019 18:38 ademir321#15
[Only registered and activated users can see links. Click Here To Register...]

Easy.

D3DXMatrixPerspectiveFovLH( &matProj, D3DX_PI/6.0f, fAspect, CWorld::m_fNearPlane - 0.01f, CWorld::m_fFarPlane );

D3DXMatrixScaling(&matScale,1.0f,1.0f,1.0f);
D3DXMatrixTranslation(&matTrans,0.0f,-0.7f,0.0f);


after:
pModel->RenderEffect( p2DRender->m_pd3dDevice, &matWorld, dwItemKind3Left, dwItemKind3Right, nAttrLevel2,nAttrLevel );

this:

CSfxMng::m_pd3dDevice->SetRenderState( D3DRS_SRCBLEND, D3DBLEND_SRCALPHA );
CSfxMng::m_pd3dDevice->SetRenderState( D3DRS_DESTBLEND, D3DBLEND_INVSRCALPHA );