Jump to content

Alteração Da Restrição De Nível Da Utilização Dos Rodares Verdes


Dynamic Things
 Share

Recommended Posts

Boas.

Tenho andado a aprender um pouco de c++, ainda não sei relativamente nada.

Tenho andado a aprender a efectuar a leitura do código, para que se torne mais fácil aprender.

Logo, este tutorial não será grande coisa, ou coisa de grande utilidade.

Mas com certeza poderá ser útil para alguém.

Como alguns não devem saber vou explicar o que me refiro aos Rodares Verdes.

Está seguinte imagem que se segue é uma fotografia dos rodares verdes.

2015-07-14_05-55-27.png

Como alguns mesmo depois de verem está imagem, não iram saber qual a funcionalidade dos rodares verdes.

Então novamente vou deixar a seguinte imagem explicar qual a sua funcionalidade.

2015-07-14_06-01-59.png

O que vos vou ensinar hoje, é como alterar, o nível limitado da sua utilização.

Então vamos começar.

1 Vamos ao game/char_item.cpp

Vamos procurar pela seguinte linha:

if (item2->GetLimitType(i) == LIMIT_LEVEL && item2->GetLimitValue(i) > 40)

O aspecto do que iram encontrar será algo semelhante a isso:

{
									// ¢¯¡þAc¡Æ©¡ ¨¡?¨ùoA©ø¢¬¢ç
									// Ay¢¥e¡¤I ¢¯¡þAc¡Æ¢® A©¬¡Æ¢® ¨úE¥ìE¡ÆA¢Òo CI¢¯¨Ï CI¥ìa AU¥ìuCO.
									if (item->GetVnum() == 71151 || item->GetVnum() == 76023)
									{
										if ((item2->GetType() == ITEM_WEAPON)
											|| (item2->GetType() == ITEM_ARMOR && item2->GetSubType() == ARMOR_BODY))
										{
											bool bCanUse = true;
											for (int i = 0; i < ITEM_LIMIT_MAX_NUM; ++i)
											{
												if (item2->GetLimitType(i) == LIMIT_LEVEL && item2->GetLimitValue(i) > 40)
												{
													bCanUse = false;
													break;
												}
											}
											if (false == bCanUse)
											{
												ChatPacket(CHAT_TYPE_INFO, LC_TEXT("Au¢¯e ¡¤©ö¨¬¡×¨¬¢¬¢¥U ©øo¨ú¨¡ ¡íc¢¯eAI ¨¬O¡Æ¢®¢¥ECO¢¥I¢¥U."));
												break;
											}
										}
										else
										{
											ChatPacket(CHAT_TYPE_INFO, LC_TEXT("©ö¡ì¡¾a¢¯I ¡Æ¨Ï¢¯E¢¯¢®¢¬¢¬ ¡íc¢¯e ¡Æ¢®¢¥ECO¢¥I¢¥U."));
											break;
										}
									}
									item2->ChangeAttribute();
								}

Vamos alterar o valor 40 para o valor limitado que queremos. Exemplo 105

Irá ficar do seguinte modo:

if (item2->GetLimitType(i) == LIMIT_LEVEL && item2->GetLimitValue(i) > 105)

Em caso de duvidas, o resultado final será algo semelhante a isto:

{
									// ¢¯¡þAc¡Æ©¡ ¨¡?¨ùoA©ø¢¬¢ç
									// Ay¢¥e¡¤I ¢¯¡þAc¡Æ¢® A©¬¡Æ¢® ¨úE¥ìE¡ÆA¢Òo CI¢¯¨Ï CI¥ìa AU¥ìuCO.
									if (item->GetVnum() == 71151 || item->GetVnum() == 76023)
									{
										if ((item2->GetType() == ITEM_WEAPON)
											|| (item2->GetType() == ITEM_ARMOR && item2->GetSubType() == ARMOR_BODY))
										{
											bool bCanUse = true;
											for (int i = 0; i < ITEM_LIMIT_MAX_NUM; ++i)
											{
												if (item2->GetLimitType(i) == LIMIT_LEVEL && item2->GetLimitValue(i) > 105)
												{
													bCanUse = false;
													break;
												}
											}
											if (false == bCanUse)
											{
												ChatPacket(CHAT_TYPE_INFO, LC_TEXT("Au¢¯e ¡¤©ö¨¬¡×¨¬¢¬¢¥U ©øo¨ú¨¡ ¡íc¢¯eAI ¨¬O¡Æ¢®¢¥ECO¢¥I¢¥U."));
												break;
											}
										}
										else
										{
											ChatPacket(CHAT_TYPE_INFO, LC_TEXT("©ö¡ì¡¾a¢¯I ¡Æ¨Ï¢¯E¢¯¢®¢¬¢¬ ¡íc¢¯e ¡Æ¢®¢¥ECO¢¥I¢¥U."));
											break;
										}
									}
									item2->ChangeAttribute();
								}

Feito isso, podem compilar a source, e o limite de uso dos rodares verdes em armas ou armaduras, já estará alterada para o valor a qual vocês escolheram.

Mesmo passos terão de repetir caso queira também mudar o nível limitado dos "adicionais". (O nome, do item não é da forma que disse, mas poderão ver a seguinte imagem, e saberão sobre o item da qual eu me refiro.)

2015-07-14_06-18-29.png

No mesmo ficheiro: game/char_item.cpp

Procuram pela seguinte linha

if (item2->GetLimitType(i) == LIMIT_LEVEL && item2->GetLimitValue(i) > 40)

e executam os mesmos passos referidos, para alterar o nível limitado dos rodares.

Cumprimentos Dynamic Things

  • Thanks 1
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...