Jump to content

Hunger

Premium
  • Posts

    356
  • Joined

  • Last visited

  • Days Won

    3
  • Feedback

    0%

Everything posted by Hunger

  1. Yes. Du riechst so gut. You could copy the shield slot and rename it Pendant instead if you want to. Otherwise you will need to buy the system or use the turkish version which is free but not on this forum.
  2. And why it is badly done may i ask? He can use the “shish kebab” version if he wants to or yours. The code above is doing the same thing without the icons on the top left corner. Why you never made your code public on this community tho?
  3. I think this should do it for the permanent dews (char_item.cpp): case ITEM_BLEND: // 새로운 약초들 sys_log(0,"ITEM_BLEND!!"); if (Blend_Item_find(item->GetVnum())) { int affect_type = AFFECT_BLEND; int apply_type = aApplyInfo[item->GetSocket(0)].bPointType; int apply_value = item->GetSocket(1); // int apply_duration = item->GetSocket(2); if (FindAffect(affect_type, apply_type)) { if (item->GetSocket(2) == 1) { RemoveAffectBlend(affect_type, apply_type); item->SetSocket(2, 0); item->Lock(0); } else { ChatPacket(CHAT_TYPE_INFO, LC_TEXT("이미 효과가 걸려 있습니다.")); } } else { AddAffect(affect_type, apply_type, apply_value, 0, 60*60*60*60*60*365, 0, false); item->Lock(1); item->SetSocket(2, 1); } } break; uiInventory.py -> before: self.wndItem.RefreshSlot() add: if itemVnum >= 50821 and itemVnum <= 50826: metinSocket = [player.GetItemMetinSocket(slotNumber, j) for j in xrange(3)] isActivated = 0 != metinSocket[2] if isActivated: self.wndItem.ActivateSlot(i) else: self.wndItem.DeactivateSlot(i)
  4. Sure. Char_battle.cpp from: // ADD_PREMIUM bool isAutoLoot = (pkAttacker->GetPremiumRemainSeconds(PREMIUM_AUTOLOOT) > 0 || pkAttacker->IsEquipUniqueGroup(UNIQUE_GROUP_AUTOLOOT)) ? true : false; // 제3의 손 // END_OF_ADD_PREMIUM to: bool isAutoLoot = true; [Hidden Content]
  5. You can activate that for all players including new ones for like 10 years do you know that right? Without changing any code inside the source.
  6. There is an item mall called “the third hand” which is collecting the yang.
  7. Stop tagging them man they have a life too. Do you really think their best thing to do is to visit the site every minute and answer to your questions?
  8. If you do that so, you will only see the percentage when you want to upgrade the item defined which is impossible because you cannot refine a blessing scroll. You need to do it in a different way. Try to replace the itemVnum with a vnum of a weapon and then try to upgrade it you will see what i am talking about. What you have done there will show the percentage of the given item (defined in uirefine.py) not when you use the item on another item to upgrade. Let's take the example of def GetRefineSuccessPercentage: if item.ITEM_TYPE_METIN == itemType: if curGrade >= len(self.upgradeStoneSuccessPercentage): return 0 return self.upgradeStoneSuccessPercentage[curGrade] This is showing the percentage of the certain type in the uirefine. The only difference is that the item type is used instead of the itemVnum. I think (not the expert here) you will need to do checks in the uiInventory.py too so the script will know you are using blessing scroll on the items.
  9. Try to put them in order and without the macro (ifdef)
  10. I think you will need to make a new button that shows up when you have the horse skill using if self.__CanUseHorseSkill(): There is the function in uiCharacter.py if self.__CanUseHorseSkill(): self.activeSkillGroupName.Hide() self.skillGroupButton1.SetText(nameList.get(group, "Noname")) self.skillGroupButton2.SetText(localeInfo.SKILL_GROUP_HORSE) self.skillGroupButton1.Show() self.skillGroupButton2.Show() I will give it a try in about one hour. Edit: I manage to add the new page somehow. There is a bug i can't understand while selecting the pages. The bug comes from __SelectSkillGroup function which i don't know how it works [Hidden Content] uiCharacter.py: From PAGE_HORSE = 2 to PAGE_HORSE = 3 Find: self.skillGroupButton2 = None Add after: self.skillGroupButton3 = None Find: self.skillGroupButton2 = self.GetChild("Skill_Group_Button_2") Add after: self.skillGroupButton3 = self.GetChild("Skill_Group_Button_3") In self.skillGroupButton = ( find : self.GetChild("Skill_Group_Button_2"), Add below: self.GetChild("Skill_Group_Button_3"), Replace the def __SetSkillGroupName(self, race, group): function with this: def __SetSkillGroupName(self, race, group): job = chr.RaceToJob(race) if not self.SKILL_GROUP_NAME_DICT.has_key(job): return nameList = self.SKILL_GROUP_NAME_DICT[job] if 0 == group: self.skillGroupButton1.SetText(nameList[1]) self.skillGroupButton2.SetText(nameList[2]) if self.__CanUseHorseSkill(): self.skillGroupButton3.SetText(localeInfo.SKILL_GROUP_HORSE) self.skillGroupButton3.Show() self.skillGroupButton3.SetPosition(95, 2) else: self.skillGroupButton3.Hide() self.skillGroupButton1.Show() self.skillGroupButton2.Show() self.activeSkillGroupName.Hide() else: if self.__CanUseHorseSkill(): self.activeSkillGroupName.Hide() self.skillGroupButton1.SetText(nameList.get(group, "Noname")) self.skillGroupButton3.SetText(localeInfo.SKILL_GROUP_HORSE) self.skillGroupButton1.Show() self.skillGroupButton2.Hide() self.skillGroupButton3.Show() self.skillGroupButton3.SetPosition(50, 2) else: self.activeSkillGroupName.SetText(nameList.get(group, "Noname")) self.activeSkillGroupName.Show() self.skillGroupButton1.Hide() self.skillGroupButton2.Hide() self.skillGroupButton3.Hide() uiscript/characterdetails.py Find: { "name" : "Skill_Group_Button_2", "type" : "radio_button", "x" : 50, "y" : 2, "text" : "Group2", "text_color" : 0xFFFFE3AD, "default_image" : "d:/ymir work/ui/game/windows/skill_tab_button_01.sub", "over_image" : "d:/ymir work/ui/game/windows/skill_tab_button_02.sub", "down_image" : "d:/ymir work/ui/game/windows/skill_tab_button_03.sub", }, Add below: ##horse skill page { "name" : "Skill_Group_Button_3", "type" : "radio_button", "x" : 95, "y" : 2, "text" : "Group3", "text_color" : 0xFFFFE3AD, "default_image" : "d:/ymir work/ui/game/windows/skill_tab_button_01.sub", "over_image" : "d:/ymir work/ui/game/windows/skill_tab_button_02.sub", "down_image" : "d:/ymir work/ui/game/windows/skill_tab_button_03.sub", }, Sorry if i couldn't do the job, im a beginner. I thought it's easier but it seems not.
  11. There should be a blacklist with users like him and to block them for posting in this section.
  12. Don’t even try to tell them why is bad to have crap leaked game files. Let them try and then they’ll figure out and they will stop being lazy.
  13. In xx\Srcs\Client\UserInterface\PythonTextTail.cpp look for: pTitle->SetPosition(pTextTail->x - (iNameWidth / 2), pTextTail->y, pTextTail->z); and play with it as much as you want. There is also a topic related to this:
  14. There is no need for source edits. Just locale/xx/locale_game.txt PVP_LEVEL0 PVP_LEVEL1 PVP_LEVEL2 PVP_LEVEL3 PVP_LEVEL4 PVP_LEVEL5 PVP_LEVEL6 PVP_LEVEL7 PVP_LEVEL8
  15. Be more explicit. What do u mean by “changing display”?
  16. The system is working great on Martysama's source. I had the problem with the inventory pages at first. A hint: do not use the edits on the comparable files he is just giving an example of how the files should look like. [Hidden Content] @HUNgarocel1 Check edits on uiinventory.py.
  17. Do you change the bonus on that armour while is equipped?
  18. Ok. What changes have you made? What code are you using? Did the mounts ever worked properly?
  19. Sure. All we need is to make a ritual to find out what’s in your syserr and then we can find the problem. Our shaman has a day off today but once he’s back you are solved.
  20. Look for koray’s offline shop he has such function.
  21. Actually, itemVnum is not defined. So: Find: ## 자동물약 (#72723, #72724) 특수처리 - 아이템인데도 슬롯에 활성화/비활성화 표시를 위한 작업임 - [hyo] if constInfo.IS_AUTO_POTION(itemIndex): Add above: itemVnum = player.GetItemIndex(Position) Find: ## 자동물약 (#72723, #72724) 특수처리 - 아이템인데도 슬롯에 활성화/비활성화 표시를 위한 작업임 - [hyo] if constInfo.IS_AUTO_POTION(itemIndex): # metinSocket - [0] : 활성화 여부, [1] : 사용한 양, [2] : 최대 용량 metinSocket = [player.GetItemMetinSocket(Position, j) for j in xrange(player.METIN_SOCKET_MAX_NUM)] if 0 != int(metinSocket[0]): slot.ActivateSlot(slotNumber) else: slot.DeactivateSlot(slotNumber) Add after: elif itemVnum >= 53001 and itemVnum <= 53256: metinSocket = [player.GetItemMetinSocket(Position, j) for j in xrange(player.METIN_SOCKET_MAX_NUM)] isActivated = 0 != metinSocket[1] if isActivated: slot.ActivateSlot(slotNumber) else: slot.DeactivateSlot(slotNumber) Demo: [Hidden Content]
×
×
  • Create New...

Important Information

Terms of Use / Privacy Policy / Guidelines / We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.