MrBocha 0 Опубликовано 21 ноября, 2012 Доброй ночи , помогите пожалуйсята как на своём сервер сделать что бы дроп квестовой вещи шел сразу всей пати ? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
NewTrend 159 Опубликовано 22 ноября, 2012 Написать квест,с проверкой как у нубл рб к примеру и все Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
MrBocha 0 Опубликовано 22 ноября, 2012 квест есть , а вот в рб дропа нет , поясни как его туда добавить по квесту или хотя бы что б она давался всей пати Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
xuser 122 Опубликовано 22 ноября, 2012 Из квеста на нубл во фрозенах: def onKill(self,npc,player,isPet): npcId = npc.getNpcId() if npcId == PILGRIM_OF_SPLENDOR : #get a random party member who is doing this quest and needs this drop partyMember = self.getRandomPartyMember(player,"awaitsWaterbinder","1") if partyMember : st = partyMember.getQuestState(qn) chance = st.getRandom(100) cond = st.getInt("cond") if st.getQuestItemsCount(WATERBINDER) < 1 : if chance < CHANCE_FOR_DROP : st.giveItems(WATERBINDER,1) st.unset("awaitsWaterbinder") if st.getQuestItemsCount(EVERGREEN) < 1 : st.playSound("ItemSound.quest_itemget") else: st.playSound("ItemSound.quest_middle") st.set("cond","3") elif npcId == JUDGE_OF_SPLENDOR : #get a random party member who is doing this quest and needs this drop partyMember = self.getRandomPartyMember(player,"awaitsEvergreen","1") if partyMember : st = partyMember.getQuestState(qn) chance = st.getRandom(100) cond = st.getInt("cond") if cond == 2 and st.getQuestItemsCount(EVERGREEN) < 1 : if chance < CHANCE_FOR_DROP : st.giveItems(EVERGREEN,1) st.unset("awaitsEvergreen") if st.getQuestItemsCount(WATERBINDER) < 1 : st.playSound("ItemSound.quest_itemget") else: st.playSound("ItemSound.quest_middle") st.set("cond","3") elif npcId == BARAKIEL : #give the quest item and update variables for ALL PARTY MEMBERS who are doing the quest, #so long as they each qualify for the drop (cond == 4 and item not in inventory) #note: the killer WILL participate in the loop as a party member (no need to handle separately) party = player.getParty() if party : for partyMember in party.getPartyMembers().toArray() : pst = partyMember.getQuestState(qn) if pst : if pst.getInt("cond") == 4 and pst.getQuestItemsCount(RAIN_SONG) < 1 : pst.giveItems(RAIN_SONG,1) pst.playSound("ItemSound.quest_middle") pst.set("cond","5") else : pst = player.getQuestState(qn) if pst : if pst.getInt("cond") == 4 and pst.getQuestItemsCount(RAIN_SONG) < 1 : pst.giveItems(RAIN_SONG,1) pst.playSound("ItemSound.quest_middle") pst.set("cond","5") return Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
NewTrend 159 Опубликовано 22 ноября, 2012 (изменено) elif npcId == BARAKIEL : #give the quest item and update variables for ALL PARTY MEMBERS who are doing the quest, #so long as they each qualify for the drop (cond == 4 and item not in inventory) #note: the killer WILL participate in the loop as a party member (no need to handle separately) party = player.getParty() if party : for partyMember in party.getPartyMembers().toArray() : pst = partyMember.getQuestState(qn) if pst : if pst.getInt("cond") == 4 and pst.getQuestItemsCount(RAIN_SONG) < 1 : pst.giveItems(RAIN_SONG,1) pst.playSound("ItemSound.quest_middle") pst.set("cond","5") else : pst = player.getQuestState(qn) if pst : if pst.getInt("cond") == 4 and pst.getQuestItemsCount(RAIN_SONG) < 1 : pst.giveItems(RAIN_SONG,1) pst.playSound("ItemSound.quest_middle") pst.set("cond","5") return вот тут смотри варианты Изменено 22 ноября, 2012 пользователем NewTrend Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты