Adauga bonus - full + marmura

Înainte de a posta o problemă, caută în acest forum și poate găsești rezolvare.
Închis
Avatar utilizator
SorinSmon
Membru Club

Membru Club
Mesaje: 135
Membru din: 16 Mai 2014, 00:00
Server: Stone2
Aprecieri: 148  
Mulţumiri: 125  
Discord: Copiază ID
Medalii

*Problemă/Întrebare:Adauga bonus - full + marmura
Tipologie server(PvM / PvP):
*Resursă folosită: *Link exclusiv J4M*
*ServerFiles utilizat:
*Syserr:
Poză:
*Detalii suplimentare: Un adauga care e permanent si cand dai cu el pe un item bagat 5 bonusuri cu tot cu marmura.. sa nu mai stea playerul sa bage fiecare adauga..
Caut asa ceva.. dar nu am nici o ideie cum se numeste.. un link cu resursa daca macar e free?
Avatar utilizator
midaseon
Utilizator interzis !

Utilizator interzis !
Mesaje: 326
Membru din: 27 Iun 2018, 19:24
Server: Lucru
Regat: Jinno
Aprecieri: 179  
Mulţumiri: 287  
Medalii

la cereri nu la probleme si intrebari
Avatar utilizator
cimpoerurobert
Nou Venit

Nou Venit
Mesaje: 33
Membru din: 25 Iul 2016, 12:48
Server: niciunul
Regat: Jinno
Aprecieri: 206  
Mulţumiri: 96  
Medalii

sursa game/char_item.cpp

Cod: Selectaţi tot

								case USE_ADD_ATTRIBUTE :
									if (item2->GetAttributeSetIndex() == -1)
									{
										ChatPacket(CHAT_TYPE_INFO, LC_TEXT("속성을 변경할 수 없는 아이템입니다."));
										return false;
									}

									if (item2->GetAttributeCount() < 5)
									{
										// 연재가 특수처리
										// 절대로 연재가 추가 안될거라 하여 하드 코딩함.
										if (item->GetVnum() == 71152 || item->GetVnum() == 76024)
										{
											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("적용 레벨보다 높아 사용이 불가능합니다."));
													break;
												}
											}
											else
											{
												ChatPacket(CHAT_TYPE_INFO, LC_TEXT("무기와 갑옷에만 사용 가능합니다."));
												break;
											}
										}
										char buf[21];
										snprintf(buf, sizeof(buf), "%u", item2->GetID());

										if (number(1, 100) <= aiItemAttributeAddPercent[item2->GetAttributeCount()])
										{
											item2->AddAttribute();
											ChatPacket(CHAT_TYPE_INFO, LC_TEXT("속성 추가에 성공하였습니다."));

											int iAddedIdx = item2->GetAttributeCount() - 1;
											LogManager::instance().ItemLog(
													GetPlayerID(), 
													item2->GetAttributeType(iAddedIdx),
													item2->GetAttributeValue(iAddedIdx),
													item->GetID(), 
													"ADD_ATTRIBUTE_SUCCESS",
													buf,
													GetDesc()->GetHostName(),
													item->GetOriginalVnum());
										}
										else
										{
											ChatPacket(CHAT_TYPE_INFO, LC_TEXT("속성 추가에 실패하였습니다."));
											LogManager::instance().ItemLog(this, item, "ADD_ATTRIBUTE_FAIL", buf);
										}

										// item->SetCount(item->GetCount() - 1);
									}
									else
									{
										ChatPacket(CHAT_TYPE_INFO, LC_TEXT("더이상 이 아이템을 이용하여 속성을 추가할 수 없습니다."));
									}
									break;
linia

Cod: Selectaţi tot

if (item2->GetAttributeCount() < 4)
o modifici in

Cod: Selectaţi tot

if (item2->GetAttributeCount() < 5)
si linia

Cod: Selectaţi tot

item->SetCount(item->GetCount() - 1);
o comentezi asa

Cod: Selectaţi tot

// item->SetCount(item->GetCount() - 1);
Pentru acest mesaj, cimpoerurobert for the post:
SorinSmon
Avatar utilizator
SorinSmon
Membru Club

Membru Club
Mesaje: 135
Membru din: 16 Mai 2014, 00:00
Server: Stone2
Aprecieri: 148  
Mulţumiri: 125  
Discord: Copiază ID
Medalii

cimpoerurobert scrie: ↑28 Dec 2019, 02:30 sursa game/char_item.cpp

Cod: Selectaţi tot

								case USE_ADD_ATTRIBUTE :
									if (item2->GetAttributeSetIndex() == -1)
									{
										ChatPacket(CHAT_TYPE_INFO, LC_TEXT("속성을 변경할 수 없는 아이템입니다."));
										return false;
									}

									if (item2->GetAttributeCount() < 5)
									{
										// 연재가 특수처리
										// 절대로 연재가 추가 안될거라 하여 하드 코딩함.
										if (item->GetVnum() == 71152 || item->GetVnum() == 76024)
										{
											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("적용 레벨보다 높아 사용이 불가능합니다."));
													break;
												}
											}
											else
											{
												ChatPacket(CHAT_TYPE_INFO, LC_TEXT("무기와 갑옷에만 사용 가능합니다."));
												break;
											}
										}
										char buf[21];
										snprintf(buf, sizeof(buf), "%u", item2->GetID());

										if (number(1, 100) <= aiItemAttributeAddPercent[item2->GetAttributeCount()])
										{
											item2->AddAttribute();
											ChatPacket(CHAT_TYPE_INFO, LC_TEXT("속성 추가에 성공하였습니다."));

											int iAddedIdx = item2->GetAttributeCount() - 1;
											LogManager::instance().ItemLog(
													GetPlayerID(), 
													item2->GetAttributeType(iAddedIdx),
													item2->GetAttributeValue(iAddedIdx),
													item->GetID(), 
													"ADD_ATTRIBUTE_SUCCESS",
													buf,
													GetDesc()->GetHostName(),
													item->GetOriginalVnum());
										}
										else
										{
											ChatPacket(CHAT_TYPE_INFO, LC_TEXT("속성 추가에 실패하였습니다."));
											LogManager::instance().ItemLog(this, item, "ADD_ATTRIBUTE_FAIL", buf);
										}

										// item->SetCount(item->GetCount() - 1);
									}
									else
									{
										ChatPacket(CHAT_TYPE_INFO, LC_TEXT("더이상 이 아이템을 이용하여 속성을 추가할 수 없습니다."));
									}
									break;
linia

Cod: Selectaţi tot

if (item2->GetAttributeCount() < 4)
o modifici in

Cod: Selectaţi tot

if (item2->GetAttributeCount() < 5)
si linia

Cod: Selectaţi tot

item->SetCount(item->GetCount() - 1);
o comentezi asa

Cod: Selectaţi tot

// item->SetCount(item->GetCount() - 1);
mersi! tc
Avatar utilizator
Ley
Nivel 9

Nivel 9
Mesaje: 1934
Membru din: 09 Feb 2017, 22:30
Server: Colossus2
Regat: Jinno
Aprecieri: 221  
Mulţumiri: 1338  
Medalii

Problemă rezolvată.
Imagine
Afișează semnătura
Închis
Răspunsuri
3
Vizualizări
307
Răspunsuri
3
Vizualizări
265
Răspunsuri
2
Vizualizări
167
Răspunsuri
2
Vizualizări
181

Înapoi la “Probleme rezolvate”

  • Informaţie