MrBishop 0 Опубликовано 6 декабря, 2018 Всем Привет, Ребят сломал всю голову,не могу подобрать код, сделал квест, к примеру убить рб, но попал в такую ситуацию, итем падает рандомно и только одному, а хотелось сделать чтоб при убийстве рб итем падал всем в группе, вот финишный код!!! может кто знает, подскажет как изменить его, чтоб падал всем участникам группы!!!! def onKill(self,npc,player,isPet): partyMember = self.getRandomPartyMember(player,"1") if not partyMember: return st = partyMember.getQuestState(qn) if st : if st.getState() == STARTED : count = st.getQuestItemsCount(LEIKEN_NOTE) if st.getInt("cond") == 1 and count < 1 : chance = 100 * Config.RATE_DROP_QUEST numItems, chance = divmod(chance,100) if st.getRandom(100) < chance : numItems += 1 if numItems : if count + numItems >= 1 : numItems = 1 - count st.playSound("ItemSound.quest_middle") st.set("cond","2") else: st.playSound("ItemSound.quest_itemget") st.giveItems(LEIKEN_NOTE,int(numItems)) return Я думаю что вот в этой стороке может что то изменить partyMember = self.getRandomPartyMember(player,"1") Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Energy 263 Опубликовано 6 декабря, 2018 Вы абсолютно правы, проблема именно в этой строке. Можете взять метод из квеста на нубл (часть 3). 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
lvlkoo 190 Опубликовано 6 декабря, 2018 Ну логически если подумать то функция переводиться как взятьСлучайногоЧленаПати, а не "взять всех" Вам нуджен метеод, который получает список игроков в пати, и циклом проходиться по нему party = player.getParty() #получаем пати if party : #проверка если пати не пустое for partyMember in party.getPartyMembers().toArray() : #начинаем цикл по игрокам пати pst = partyMember.getQuestState(qn) #получение состояния конкретного игрока #тут интегрируйте ваш код для проверок и получения предметов для игроков пати, и спользуя состояние "pst" 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
MrBishop 0 Опубликовано 6 декабря, 2018 8 часов назад, Energy сказал: Вы абсолютно правы, проблема именно в этой строке. Можете взять метод из квеста на нубл (часть 3). 7 часов назад, lvlkoo сказал: Ну логически если подумать то функция переводиться как взятьСлучайногоЧленаПати, а не "взять всех" Вам нуджен метеод, который получает список игроков в пати, и циклом проходиться по нему party = player.getParty() #получаем пати if party : #проверка если пати не пустое for partyMember in party.getPartyMembers().toArray() : #начинаем цикл по игрокам пати pst = partyMember.getQuestState(qn) #получение состояния конкретного игрока #тут интегрируйте ваш код для проверок и получения предметов для игроков пати, и спользуя состояние "pst" Ребят,спасибо большое! удалось сделать, что хотел))))) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты