Forum .. CITY'S Lapy BGS.

Jest to Forum o Bieganiu ( Gra ).


#1 2009-09-16 21:10:40

Stany Zjednoczone

Post'er

Skąd: Łapy
Zarejestrowany: 2009-09-16
Posty: 71
Punktów :   
Kraj :: Stany Zjednoczone
mdl. Złote :: 4
mdl. Brązowe :: 2
Doświadczenie :: 3.479
WWW

8.31 : Massive Arrow Skrypt

Wchodząc w ten temat pewnie myślicie: następny noobowy czar. Tym razem nie! Chciałbym zaprezentować wam czar, który jest unikatowy i na żadnym serwerze go jeszcze nie widziałem. Polega na tym, że mówimy inkatację i do każdego gracza albo potwora na ekranie wylatuje od nas strzała. Manę zabiera na początku oraz przy każdym wystrzeleniu strzały. Czar pomaga przy ucieczce przed dużą grupą PK, albo przy zabijaniu dużej ilości słabych potworów. Jest przeznaczony dla palladyna.


Skrypt
Tworzymy plik o nazwie arrow wave.lua w folderze data/spells/scripts, a następnie wklejamy do niego:

Kod:
-- Massive Arrow Wave by Gelio
local combat = createCombatObject()
-- Oczywiście te parametry możemy zmieniać
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_DRAWBLOOD)
setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ARROW)
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatFormula(combat, COMBAT_FORMULA_SKILL, 0.5, 0, 0.7, 20)
local obszar = {
poziomo = 7,   -- Na ile kratek w poziomie szuka celow
pionowo = 5    -- Na ile kratek w pionie szuka celow
}
local manaPerTarget = 20    -- Ile many ma zabierać przy kazdym strzale
function onCastSpell(cid, var)
local specs = getSpectators(getCreaturePosition(cid), obszar.poziomo, obszar.pionowo, FALSE)
for i=1, #specs do
    if((getCreatureMana(cid) > manaPerTarget or isPlayer(cid) == FALSE) and isNpc(specs[i]) == FALSE and getTilePzInfo(getCreaturePosition(specs[i])) == FALSE) then
        local target = specs[i]
        if(target ~= cid) then
            local targetPos = getCreaturePosition(target)
            if(isSightClear == nil or isSightClear(getCreaturePosition(cid), targetPos, FALSE) == TRUE) then
                doCombat(cid, combat, numberToVariant(target))
                if(isPlayer(cid) == TRUE) then
                    doCreatureAddMana(cid, -manaPerTarget)
                    doPlayerAddSpentMana(cid, manaPerTarget)
                end
            end
        end
    else
        break
    end
end
if(#specs == 1) then
    doPlayerSendCancel(cid,"You do not have any target.")
end
return TRUE
end
Teraz gdy skrypt już zrobiony otwieramy spells.xml, które znajduje się w folderze data/spells i dodajemy do niego:

Kod:
    <instant name="Massive Arrow Strike" words="exevo mas con" lvl="50" mana="180" prem="1" blockwalls="1" exhaustion="2000" needlearn="1" script="arrow wave.lua">
        <vocation name="Paladin" />
        <vocation name="Royal Paladin" />
    </instant>
Mam nadzieję, że skrypt przyda się wielu osobom i wzbogaci czary na każdym serwerze.

Pozdrawiam i zachęcam do komentowania,


Administrator :
*Teleman*
Supreme Sail Ella Club

Offline

 

Stopka forum

RSS
Powered by PunBB
© Copyright 2002–2008 PunBB
Polityka cookies - Wersja Lo-Fi


Darmowe Forum | Ciekawe Fora | Darmowe Fora
www.sunnycraft.pun.pl www.frags-fighter.pun.pl www.xiaolinshowndown.pun.pl www.nowe-bakugan.pun.pl www.ohayo-nostale.pun.pl