Reklama
Pokazuje wyniki od 1 do 4 z 4

Temat: [8.54]Skrypt Action PROBLEM

  1. #1
    seneke

    Domyślny [8.54]Skrypt Action PROBLEM

    Witam mam skrypt aby co 100 lvli przybywalo do bp 50cc , mam tak kod :

    local cfg ={s = 1111,
    i = 2160
    l = 100, 200, 300, 400, 500,
    600, 700, 800, 900, 1000,
    1100, 1200, 1300, 1400,
    1500, 1600, 1700, 1800,
    1900, 2000, 2100, 2200,
    2300, 2400, 2500, 2600,
    2700, 2800, 2900, 3000}

    function onAdvance(cid, skill, oldLevel, newLevel)

    if (skill == SKILL__LEVEL) and (newLevel == cfg.l)

    and (getPlayerStorageValue(cid, cfg.s) ~= 1)

    then doPlayerAddItem(cid, cfg.i, 50)

    doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Gratulacje, dostales 50cc!")

    setPlayerStorageValue(cid, cfg.s, 1)

    end

    return true

    end
    Chcialbym abyscie zobaczyli czy kod jest prawidlowo stworzony oraz co trzeba dopisac aby te 50cc przychodzilo tylko raz , np po zdobyciu 100lvla przychodzi 50cc, jak sie zginie i znowu wbije 100lvl to juz 50cc nie przychodzi. Prosze o szybka pomoc, z gory dziekuje.
    Ostatnio zmieniony przez seneke : 23-06-2010, 21:33

  2. #2
    Avatar GM Esio
    Data rejestracji
    2007
    Położenie
    Mysłowice
    Wiek
    33
    Posty
    333
    Siła reputacji
    19

    Domyślny

    Musisz jeszcze dodać informacje, że w przypadku gdy osoba dostanie już pieniądze to gdy ponownie będzie chciała dostać (w przypadku gdy zginie i ponownie zdobędzie poziom), że już dostała nagrodę.
    http://ots.tibiaserver.pl/tibiaserver.gif

  3. #3
    Avatar Fedake
    Data rejestracji
    2007
    Położenie
    Żory
    Wiek
    29
    Posty
    229
    Siła reputacji
    18

    Domyślny

    Musisz dla każdego lvla przyporządkować Storage value. np 100lvl - 10001 200lvl - 10002 itd. Następnie musisz ułożyć warunek w którym jeśli przy adv na 100 lvl wartość storage value 10001 wynosi -1 wtedy osoba dostaje kase i jednocześnie funkcją setPlayerStorageValue(cid, 10001, 1) ustawia jego storage value na 1. Przy dedzie i wbiciu 100 jeszcze raz storage bedzie wynosiła 1 więc warunek dodawania kasy nie będzie spełniony. Proste xD

  4. Reklama
  5. #4
    Avatar bolek
    Data rejestracji
    2005
    Położenie
    -
    Wiek
    34
    Posty
    493
    Siła reputacji
    21

    Domyślny

    A nie lepiej i prościej tak:

    Kod :
    function onAdvance(cid, skill, oldLevel, newLevel)
    if (skill == SKILL__LEVEL) and (newLevel % 100 == 0) and (getPlayerStorageValue(cid, newLevel+1000) ~= 1) then 
    doPlayerAddItem(cid, 2160, 50)
    doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Gratulacje, dostales 50cc!")
    setPlayerStorageValue(cid, newLevel+1000, 1)
    end
    return true
    end

Reklama

Informacje o temacie

Użytkownicy przeglądający temat

Aktualnie 1 użytkowników przegląda ten temat. (0 użytkowników i 1 gości)

Podobne tematy

  1. [lua] tworzenie przedmiotu z action/unique id
    Przez fracek91 w dziale Strefa developerska
    Odpowiedzi: 5
    Ostatni post: 21-11-2010, 14:06
  2. [8.0]Action script - OnUse
    Przez mejo33 w dziale Strefa developerska
    Odpowiedzi: 6
    Ostatni post: 12-09-2010, 19:12
  3. [7.92][action]losowy przedmiot
    Przez GM Esio w dziale Strefa developerska
    Odpowiedzi: 0
    Ostatni post: 21-06-2010, 16:42
  4. [8.54][SKRYPT]Skrypt NPC+Zabijanie potworka
    Przez Morgahar w dziale Strefa developerska
    Odpowiedzi: 4
    Ostatni post: 17-04-2010, 17:16
  5. Tibia w Cd-Action.
    Przez Mati ms w dziale Tibia
    Odpowiedzi: 107
    Ostatni post: 29-01-2010, 23:21

Zakładki

Zakładki

Zasady postowania

  • Nie możesz pisać nowych tematów
  • Nie możesz pisać postów
  • Nie możesz używać załączników
  • Nie możesz edytować swoich postów
  •