comparison GUI/UI/UIPopup.cpp @ 2566:30eb6dcac768

big spell fx overhaul
author a.parshin
date Wed, 20 May 2015 21:05:07 +0200
parents 91c75d202d30
children d569340b05ff
comparison
equal deleted inserted replaced
2565:117c219bf913 2566:30eb6dcac768
1450 } 1450 }
1451 if (PID_TYPE((unsigned __int16)v5) == OBJECT_Item) 1451 if (PID_TYPE((unsigned __int16)v5) == OBJECT_Item)
1452 { 1452 {
1453 if ( !(pObjectList->pObjects[pSpriteObjects[PID_ID((unsigned __int16)v5)].uObjectDescID].uFlags & 0x10 ) ) 1453 if ( !(pObjectList->pObjects[pSpriteObjects[PID_ID((unsigned __int16)v5)].uObjectDescID].uFlags & 0x10 ) )
1454 { 1454 {
1455 GameUI_DrawItemInfo(&pSpriteObjects[PID_ID((unsigned __int16)v5)].stru_24); 1455 GameUI_DrawItemInfo(&pSpriteObjects[PID_ID((unsigned __int16)v5)].containing_item);
1456 } 1456 }
1457 } 1457 }
1458 } 1458 }
1459 break; 1459 break;
1460 } 1460 }
1853 if ( !potionID ) 1853 if ( !potionID )
1854 { 1854 {
1855 GameUI_DrawItemInfo(item); 1855 GameUI_DrawItemInfo(item);
1856 return; 1856 return;
1857 } 1857 }
1858 if ( damage_level == 1 ) 1858
1859 { 1859 if (damage_level > 0)
1860 pPlayers[uActiveCharacter]->RemoveItemAtInventoryIndex(pOut_y); 1860 {
1861 pPlayers[uActiveCharacter]->ReceiveDamage(rand() % 11 + 10, DMGT_FIRE); 1861 pPlayers[uActiveCharacter]->RemoveItemAtInventoryIndex(pOut_y);
1862 pAudioPlayer->PlaySound(SOUND_fireBall, 0, 0, -1, 0, 0, 0, 0); 1862
1863 pMessageQueue_50CBD0->AddGUIMessage(UIMSG_Escape, 0, 0); 1863 if (damage_level == 1)
1864 v39.z = pParty->vPosition.z + pParty->sEyelevel; 1864 {
1865 v39.x = pParty->vPosition.x; 1865 pPlayers[uActiveCharacter]->ReceiveDamage(rand() % 11 + 10, DMGT_FIRE);
1866 v39.y = pParty->vPosition.y; 1866 }
1867 1867 else if (damage_level == 2)
1868 int rot_x, rot_y, rot_z; 1868 {
1869 Vec3_int_::Rotate(64, pParty->sRotationY, pParty->sRotationX, v39, &rot_x, &rot_y, &rot_z); 1869 pPlayers[uActiveCharacter]->ReceiveDamage(rand() % 71 + 30, DMGT_FIRE);
1870 SpriteObject::sub_42F7EB_DropItemAt(0x41Bu, rot_x, rot_y, rot_z, 0, 1, 0, 0, 0); 1870 pPlayers[uActiveCharacter]->ItemsEnchant(1);
1871 if ( dword_4E455C ) 1871 }
1872 { 1872 else if (damage_level == 3)
1873 if ( pPlayers[uActiveCharacter]->CanAct() ) 1873 {
1874 pPlayers[uActiveCharacter]->PlaySound(SPEECH_17, 0); 1874 pPlayers[uActiveCharacter]->ReceiveDamage(rand() % 201 + 50, DMGT_FIRE);
1875 ShowStatusBarString(pGlobalTXT_LocalizationStrings[444], 2);//Îé! 1875 pPlayers[uActiveCharacter]->ItemsEnchant(5);
1876 dword_4E455C = 0; 1876 }
1877 } 1877 else if (damage_level >= 4)
1878 pMouse->RemoveHoldingItem(); 1878 {
1879 no_rightlick_in_inventory = 1; 1879 pPlayers[uActiveCharacter]->SetCondition(Condition_Eradicated, 0);
1880 return; 1880 pPlayers[uActiveCharacter]->ItemsEnchant(0);
1881 } 1881 }
1882 if ( damage_level == 2 ) 1882
1883 { 1883 pAudioPlayer->PlaySound(SOUND_fireBall, 0, 0, -1, 0, 0, 0, 0);
1884 pPlayers[uActiveCharacter]->RemoveItemAtInventoryIndex(pOut_y); 1884 pMessageQueue_50CBD0->AddGUIMessage(UIMSG_Escape, 0, 0);
1885 pPlayers[uActiveCharacter]->ReceiveDamage(rand() % 71 + 30, DMGT_FIRE); 1885 v39.z = pParty->vPosition.z + pParty->sEyelevel;
1886 pPlayers[uActiveCharacter]->ItemsEnchant(1); 1886 v39.x = pParty->vPosition.x;
1887 pAudioPlayer->PlaySound(SOUND_fireBall, 0, 0, -1, 0, 0, 0, 0); 1887 v39.y = pParty->vPosition.y;
1888 pMessageQueue_50CBD0->AddGUIMessage(UIMSG_Escape, 0, 0); 1888
1889 1889 int rot_x, rot_y, rot_z;
1890 v39.z = pParty->vPosition.z + pParty->sEyelevel; 1890 Vec3_int_::Rotate(64, pParty->sRotationY, pParty->sRotationX, v39, &rot_x, &rot_y, &rot_z);
1891 v39.x = pParty->vPosition.x; 1891 SpriteObject::sub_42F7EB_DropItemAt(SPRITE_SPELL_FIRE_FIREBALL_IMPACT, rot_x, rot_y, rot_z, 0, 1, 0, 0, 0);
1892 v39.y = pParty->vPosition.y; 1892 if (dword_4E455C)
1893 1893 {
1894 int rot_x, rot_y, rot_z; 1894 if (pPlayers[uActiveCharacter]->CanAct())
1895 Vec3_int_::Rotate(64, pParty->sRotationY, pParty->sRotationX, v39, &rot_x, &rot_y, &rot_z); 1895 pPlayers[uActiveCharacter]->PlaySound(SPEECH_17, 0);
1896 SpriteObject::sub_42F7EB_DropItemAt(0x41Bu, rot_x, rot_y, rot_z, 0, 1, 0, 0, 0); 1896 ShowStatusBarString(pGlobalTXT_LocalizationStrings[444], 2);//Îé!
1897 if ( dword_4E455C ) 1897 dword_4E455C = 0;
1898 { 1898 }
1899 if ( pPlayers[uActiveCharacter]->CanAct() ) 1899 pMouse->RemoveHoldingItem();
1900 pPlayers[uActiveCharacter]->PlaySound(SPEECH_17, 0); 1900 no_rightlick_in_inventory = 1;
1901 ShowStatusBarString(pGlobalTXT_LocalizationStrings[444], 2);//Îé! 1901 return;
1902 dword_4E455C = 0; 1902 }
1903 } 1903 else //if ( damage_level == 0 )
1904 pMouse->RemoveHoldingItem();
1905 no_rightlick_in_inventory = 1;
1906 return;
1907 }
1908 if ( damage_level == 3 )
1909 {
1910 pPlayers[uActiveCharacter]->RemoveItemAtInventoryIndex(pOut_y);
1911 pPlayers[uActiveCharacter]->ReceiveDamage(rand() % 201 + 50, DMGT_FIRE);
1912 pPlayers[uActiveCharacter]->ItemsEnchant(5);
1913 pAudioPlayer->PlaySound(SOUND_fireBall, 0, 0, -1, 0, 0, 0, 0);
1914
1915 pMessageQueue_50CBD0->AddGUIMessage(UIMSG_Escape, 0, 0);
1916
1917 v39.z = pParty->vPosition.z + pParty->sEyelevel;
1918 v39.x = pParty->vPosition.x;
1919 v39.y = pParty->vPosition.y;
1920
1921 int rot_x, rot_y, rot_z;
1922 Vec3_int_::Rotate(64, pParty->sRotationY, pParty->sRotationX, v39, &rot_x, &rot_y, &rot_z);
1923 SpriteObject::sub_42F7EB_DropItemAt(0x41Bu, rot_x, rot_y, rot_z, 0, 1, 0, 0, 0);
1924 if ( dword_4E455C )
1925 {
1926 if ( pPlayers[uActiveCharacter]->CanAct() )
1927 pPlayers[uActiveCharacter]->PlaySound(SPEECH_17, 0);
1928 ShowStatusBarString(pGlobalTXT_LocalizationStrings[444], 2);//Îé!
1929 dword_4E455C = 0;
1930 }
1931 pMouse->RemoveHoldingItem();
1932 no_rightlick_in_inventory = 1;
1933 return;
1934 }
1935 if ( damage_level == 4 )
1936 {
1937 pPlayers[uActiveCharacter]->RemoveItemAtInventoryIndex(pOut_y);
1938 pPlayers[uActiveCharacter]->SetCondition(Condition_Eradicated, 0);
1939 pPlayers[uActiveCharacter]->ItemsEnchant(0);
1940 pAudioPlayer->PlaySound(SOUND_fireBall, 0, 0, -1, 0, 0, 0, 0);
1941
1942 pMessageQueue_50CBD0->AddGUIMessage(UIMSG_Escape, 0, 0);
1943
1944 v39.z = pParty->vPosition.z + pParty->sEyelevel;
1945 v39.x = pParty->vPosition.x;
1946 v39.y = pParty->vPosition.y;
1947
1948 int rot_x, rot_y, rot_z;
1949 Vec3_int_::Rotate(64, pParty->sRotationY, pParty->sRotationX, v39, &rot_x, &rot_y, &rot_z);
1950 SpriteObject::sub_42F7EB_DropItemAt(0x41Bu, rot_x, rot_y, rot_z, 0, 1, 0, 0, 0);
1951 if ( dword_4E455C )
1952 {
1953 if ( pPlayers[uActiveCharacter]->CanAct() )
1954 pPlayers[uActiveCharacter]->PlaySound(SPEECH_17, 0);
1955 ShowStatusBarString(pGlobalTXT_LocalizationStrings[444], 2);//Îé!
1956 dword_4E455C = 0;
1957 }
1958 pMouse->RemoveHoldingItem();
1959 no_rightlick_in_inventory = 1;
1960 return;
1961 }
1962 if ( damage_level == 0 )
1963 { 1904 {
1964 if ( alchemy_skill_points ) 1905 if ( alchemy_skill_points )
1965 { 1906 {
1966 if ( pPlayers[uActiveCharacter]->pInventoryItemList[item_pid].uItemID == 221 || pParty->pPickedItem.uItemID == 221 )//catalyst(êàòàëèçàòîð) 1907 if ( pPlayers[uActiveCharacter]->pInventoryItemList[item_pid].uItemID == 221 || pParty->pPickedItem.uItemID == 221 )//catalyst(êàòàëèçàòîð)
1967 { 1908 {