Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

Biolog Gui + quest


Isair

Rekomendowane odpowiedzi

Opublikowano

Beztytuup_epshpsa.png


game.py



"biolog" : self.biologui,
"oddaj" : self.oddaj,
"openbio" : self.biologopen,


def oddaj(self, qid):
constInfo.oddajbiol = int(qid)


def biologui(self, arg):
data = arg.split("|")
constInfo.itembiolog = int(data[0])
constInfo.czasbiolog = int(data[1])
constInfo.oddane = int(data[2])
constInfo.dooddania = int(data[3])
constInfo.lvlbiolog = int(data[4])

def biologopen(self):
self.uibiolog.Show()

constinfo.py



itembiolog = 0
czasbiolog = 0
oddane = 0
dooddania = 0
lvlbiolog = 0
oddajbiol = 0

uibiolog



http://hostuje.net/file.php?id=cbb8cd5348c8591613041985e187c496

quest



quest letter begin
state start begin
when login or levelup with pc.level >= 30 begin
set_state(information)
end
end
state information begin
when letter begin
send_letter("Badania", "item", "333")
end
when button or info begin
say_title("Badania")
say("")
say("Możesz rozpocząć nowe badania.")
say("Zajrzyj do swojego podręcznika.")
set_state(rozpoczynamy)
pc.setf("collect_quest_lv30", "otwieranie", 1)
cmdchat("biolog 30006|".. pc.getqf("duration").."|"..pc.getqf("collect_count").."|10|30")
cmdchat("oddaj "..q.getcurrentquestindex())
end
end
state rozpoczynamy begin
when login with pc.get_level() >= 30 begin
if pc.getqf("duration") - get_time() > 0 and pc.getqf("duration") - get_time() < 1000 then
cmdchat("biolog 30006|".. pc.getqf("duration").."|"..pc.getqf("collect_count").."|10|30")
cmdchat("oddaj "..q.getcurrentquestindex())
else
cmdchat("biolog 30006|0|"..pc.getqf("collect_count").."|10|30")
cmdchat("oddaj "..q.getcurrentquestindex())
end
end
when button or info with pc.count_item(30006) > 0 begin
if get_time() > pc.getqf("duration") then
pc.remove_item("30006", 1)
pc.setqf("duration",get_time()+1*1*1)
if pc.getqf("drink_drug") == 1 then
pc.setqf("drink_drug", 0)
pass_percent = 90
else
pass_percent = 60
end
local s= number(1,100)
if s<= pass_percent then
if pc.getqf("collect_count")< 9 then
local index = pc.getqf("collect_count")+1
pc.setqf("collect_count", index)
syschat("Ohh tak ten ząb jest doskonałej jakości")
cmdchat("biolog 30006|".. pc.getqf("duration").."|"..pc.getqf("collect_count").."|10|30")
return
end
cmdchat("openbio")
say_title("Badania:")
say_reward("Dzięki badaniom dowiedziałeś się wielu przydatnych informacji.")
say_reward("Twoja praca zaowocowała, czujesz się silniejszy")
local s = select("Siła", "Zręczność ", "Inteligencja", "Kondycja")
if s == 1 then
say_title("Baek-Go:")
say("Otrzymujesz +8 do siły.")
affect.add_collect(apply.STR, 8, 60*60*24*365*60)
elseif s == 2 then
say_title("Baek-Go:")
say("Otrzymujesz +8 do zręczności.")
affect.add_collect(apply.DEX, 8, 60*60*24*365*60)
elseif s == 3 then
say_title("Baek-Go:")
say("Otrzymujesz +8 do inteligencji.")
affect.add_collect(apply.INT, 8, 60*60*24*365*60)
elseif s == 4 then
say_title("Baek-Go:")
say("Otrzymujesz +12 do kondycji.")
affect.add_collect(apply.CON, 12, 60*60*24*365*60)
end
clear_letter()
set_quest_state("collect_quest_lv40", "run")
set_state(__complete)
local Reward = 15
cmdchat("achievement ___Badacz_I%Uzyskujesz:_+_"..Reward .."_PO")
pc.setf("achievement", "PO", Reward + pc.getf("achievement", "PO"))
bcaa = tonumber(pc.getf("achievement", "PO"))
cmdchat("po "..bcaa)
pc.setqf("collect_count",0)
pc.setqf("drink_drug",0)
pc.setqf("duration",0)
pc.setf("collect_quest_lv30", "otwieranie", 0)
return
else
syschat("Ten ząb jest złej jakości")
pc.setqf("duration",get_time()+1*1*1)
cmdchat("biolog 30006|".. pc.getqf("duration") + get_time().."|"..pc.getqf("collect_count").."|10|30")
return
end
else
syschat("Jeszce nie skończyłem badać ostatniego zęba")
return
end
end
when kill with npc.get_race() == 636 or npc.get_race() == 635 or npc.get_race() == 637 begin
local s = number(1, 10)
if s == 1 then
pc.give_item2(30006, 1)
end
end
when 71035.use begin
if get_time() < pc.getqf("duration") and pc.getqf("drink_drug") < 1 then
say_reward("Eliskir Poszukiwacza:")
say("Ten magiczny przedmiot zmniejsza czas")
say("oddania następnego przedmiotu u biologa,")
say("po jego użyciu możesz natychmiast")
say("oddać przedmiot!")
say("Ponadto daję większą szansę na przyjęcie przedmiotu!")
say_reward("Czy chcesz użyć Eliksiru?")
say_reward("Zostanie on usunięty po użyciu.")
local wy = select("Użyj.", "Nie używaj.")
if wy == 2 then
return
elseif wy == 1 then
pc.setqf("duration", 0)
pc.setqf("drink_drug",1)
say("Możesz już oddać przedmiot biologowi!")
say_reward("Eliksir Poszukiwacza zostaję usunięty!")
pc.remove_item(71035, 1)
end
else
say_reward("Eliksir Poszukiwacza:")
say("Nie możesz użyć przedmiotu, ponieważ ")
say("biolog już może przyjąć przedmiot.")
return
end
end
end
state __complete begin
end
end

quest na otwieranie



if pc.getf("collect_quest_lv30", "otwieranie") == 1 then
cmdchat("openbio")
else
say("Aktualnie nie ma aktywnych badań ")
end

aFMA3pg.png

Opublikowano

Zaraz dodam i sprawdzę czy działa :)

 

Tak btw kto to robił? :)

Jeżeli Ci pomogłem. Kliknij 1387468256-U352037.png, Dzięki :)

Opublikowano

Dodałem pierw quest na otwieranie + do clienta to pisze że nie ma aktualnych badan a jak wgrałem misje to nie działa wgl ten item.

competitions,proportional,456,186,36a24f

Opublikowano

Musicie wgrać dwa questy ten na otwieranie np w pierścieniu teleportacji, lub jak ktoś potrafi może zrobić pod przyciskiem np F5 to też nie problem. Badania się uaktywnia po kliknieciu na zwój " badania" wtedy można użyc otwierania GUI. quest dobrze by było jakbyście nazwali "collect_quest_lv30"

aFMA3pg.png

Opublikowano

Zaraz dodam i sprawdzę czy działa :)

 

Tak btw kto to robił? :)

 

To jest autorska praca.

Jedyne co tu widzę to component.py zaczerpnięte z Astium/gui editora Kamera.

Dobra robota. ;)

pre_1405084226__sygnatura_3.png

Opublikowano

Lepiej by było taki:

 

metin-1384671034-U5.jpg

Wolę z możliwościa oddania na odległość, ale pomysł z okienkiem po skończeniu badania fajny

aFMA3pg.png

Opublikowano

jak to dodac bo nie pisze po czym np dodac to 

 

 

            "biolog"                : self.biologui,
            "oddaj"                    : self.oddaj,
            "openbio"                : self.biologopen,    def oddaj(self, qid):
        constInfo.oddajbiol = int(qid)    def biologui(self, arg):
        data = arg.split("|")
        constInfo.itembiolog = int(data[0])
        constInfo.czasbiolog = int(data[1])
        constInfo.oddane = int(data[2])
        constInfo.dooddania = int(data[3])
        constInfo.lvlbiolog = int(data[4])
    
    def biologopen(self):
        self.uibiolog.Show()
constinfo.py
itembiolog = 0
czasbiolog = 0
oddane = 0
dooddania = 0
lvlbiolog = 0

oddajbiol = 0
 

 

  • 3 miesiące temu...

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...