krist_ - 2009-10-15 19:00:58

Tutaj postanowiłem zamieszczać wszystkie moje propozycje. Będę je zamieszczał w różnych formach :) Tzn. w postaci skryptów (od razu mówię, że nie wszystkie są mojego autorstwa, zwyczajnie przeszukałem sieć) lub po prostu luźnych propozycji. Proszę również o nie spamowanie postami typu "żal mi cie" jak to już bywało. Dzięki z góry; *
No to zacznijmy.

Addon Doll


Item: Addon Doll (ID: 9693)
Funkcja: Po użyciu komendy "!addon <nazwa addona>" (np. !addon Mage) dodaje nam wszystkie addony z tego outfitu, po czym usuwa lalkę.
W data/talkactions/talkations.xml dodaj:

Kod:

 <talkaction words="!addon" event="script" value="addondoll.lua"/>W data/talkactions/scripts/addondoll.lua dodaj:
function onSay(cid, words, param)
local femaleOutfits = { ["citzen"]={136}, ["hunter"]={137}, ["mage"]={138}, ["knight"]={139}, ["noblewoman"]={140}, ["summoner"]={141}, ["warrior"]={142}, ["barbarian"]={147}, ["druid"]={148}, ["wizard"]={149}, ["oriental"]={150}, ["pirate"]={155}, ["assassin"]={156}, ["beggar"]={157}, ["shaman"]={158}, ["norsewoman"]={252}, ["nightmare"]={269}, ["jester"]={270}, ["brotherhood"]={270}, ["demonhunter"]={288}, ["yalaharian"]={324} }
local maleOutfits = { ["citzen"]={128}, ["hunter"]={129}, ["mage"]={130}, ["knight"]={131}, ["nobleman"]={132},["summoner"]={133}, ["warrior"]={134}, ["barbarian"]={143}, ["druid"]={144}, ["wizard"]={145}, ["oriental"]={146}, ["pirate"]={151}, ["assassin"]={152}, ["beggar"]={153}, ["shaman"]={154}, ["norsewoman"]={251}, ["nightmare"]={268}, ["jester"]={273}, ["brotherhood"]={278}, ["demonhunter"]={289}, ["yalaharian"]={325} }
local msg = {"Command requires GOOD param!", "You dont have Addon Doll!", "Bad param!", "Full Addon Set sucesfully added!"}
local param = string.lower(param)

if(getPlayerItemCount(cid, 9693) > 0) then
if(param ~= "" and maleOutfits[param] and femaleOutfits[param]) then
doPlayerRemoveItem(cid, 9693, 1)
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, msg[4])
doSendMagicEffect(getCreaturePosition(cid), CONST_ME_GIFT_WRAPS)
if(getPlayerSex(cid) == 0)then
doPlayerAddOutfit(cid, femaleOutfits[param][1], 3)
else
doPlayerAddOutfit(cid, maleOutfits[param][1], 3)
end
else
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, msg[1])
end
else
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, msg[2])
end
end

Frags Remover


Item: Black Skull (ID: 9969) - równie dobrze może być to inny item :)
Funkcja: Usuwa wszystkie fragi, po czym zmienia się w zwykłego skulla.
W data/actions/actions.xml dodaj:

Kod:

 <action itemid="9969" event="script" value="tools/blackskull.lua"/>W data/actions/scripts/tools/blackskull.lua dodaj:
function onUse(cid, item, fromPosition, itemEx, toPosition)
if(getPlayerRedSkullTicks(cid) == 0) then
doCreatureSay(cid, "You dont have any frags!", TALKTYPE_ORANGE_1)
else
doCreatureSay(cid, "Frags sucesfully removed.", TALKTYPE_ORANGE_1)
doPlayerSetRedSkullTicks(cid, -getPlayerRedSkullTicks(cid))
doTransformItem(item.uid, 2320)
end
end

Infinity Mana Potion


Infinity Potion (ID: 7488)
Funkcja: Jako jeden, niekończący się potion dodaje graczowi many w zależności od profesji i poziomu.
W data/actions/actions.xml dodaj:

Kod:

<action itemid="7488" event="script" value="scripts/infinity.lua" allowfaruse="1"/>

W data/actions/scripts/infinity.lua dodaj:

Kod:

 -- Infinity Mana Potion - by Chybus. --
function onUse(cid, item, frompos, item2, topos)
    local level = getPlayerLevel(cid)
    local mlevel = getPlayerMagLevel(cid)
    -- Exhausted Settings --
    local exhausted_seconds = 1,5 -- How many seconds manarune will be unavailible to use. --
    local exhausted_storagevalue = 7000 -- Storage Value to store exhaust. It MUST be unused! --
    -- Exhausted Settings END --
    -- Mana Formula Settings --
    -- You can use "level" and "mlevel" --
    local mana_minimum = (level * 1) + (mlevel * 3) 
    local mana_maximum = (level * 1) + (mlevel * 3) + 200
    -- Mana Formula Settings END --
    local mana_add = math.random(200, 600)
        -- We check the charges. --
        if(item.type > 1) then
            -- Exhausted check. --
            if(os.time() > getPlayerStorageValue(cid, exhausted_storagevalue)) then
                -- Entity is player? --
                if(isPlayer(item2.uid) == 1) then
                    doSendMagicEffect(frompos, CONST_ME_MAGIC_RED)
                    doSendMagicEffect(topos, CONST_ME_MAGIC_GREEN)
                    doSendAnimatedText(topos, mana_add, TEXTCOLOR_DARKYELLOW)
                    doPlayerAddMana(item2.uid, mana_add)
                    setPlayerStorageValue(cid, exhausted_storagevalue, os.time() + exhausted_seconds)
                    doChangeTypeItem(item.uid, item.type - 1)
                else
                    doSendMagicEffect(frompos, CONST_ME_POFF)
                    doPlayerSendCancel(cid, "You can use this potion only on players.")
                end
            else
                doSendMagicEffect(frompos, CONST_ME_POFF)
                doPlayerSendCancel(cid, "You are exhausted.")
            end
        else
            if(os.time() < getPlayerStorageValue(cid, exhausted_storagevalue)) then
                doSendMagicEffect(frompos, CONST_ME_POFF)
                doPlayerSendCancel(cid, "You are exhausted.")
            else
                if(isPlayer(item2.uid) == 1) then
                    doSendMagicEffect(frompos, CONST_ME_MAGIC_RED)
                    doSendMagicEffect(topos, CONST_ME_MAGIC_GREEN)
                    doSendAnimatedText(topos, mana_add, TEXTCOLOR_DARKYELLOW)
                    doPlayerAddMana(item2.uid, mana_add)
                    setPlayerStorageValue(cid, exhausted_storagevalue, os.time() + exhausted_seconds)
                    doRemoveItem(item.uid, 0)
                else
                    doSendMagicEffect(frompos, CONST_ME_POFF)
                    doPlayerSendCancel(cid, "You can use this potion only on players.")
                end
            end
        end
    return 1
end

Ten skrypt jest mojego autorstwa! Potion nie kończy się, dodaje many w zależności od levela i magic levela! Ma dopasowane exhausted.

Drunk Rune


Funkcja : Runa bardzo przydatna na OTS RPG, takim jak Eufor ! Niewiarygodna zmiana w PvP :) Paraliż + Drunk = Pewna śmierć, no chyba żee... :P
w spells.xml dodaj linijkę :
<rune name="Drunkness" id="2267" charges="1" maglv="20" exhaustion="2000" blocktype="solid" allowfaruse="1" script="custom/drunk.lua" />
Następnie tworzymy plik drunk.lua w folderze spells/scripts i uzupełniamy tekstem :

Kod:

local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_RED)

local condition = createConditionObject(CONDITION_DRUNK)
setConditionParam(condition, CONDITION_PARAM_TICKS, 20000)
setCombatCondition(combat, condition)

local area = createCombatArea( { {1, 1, 1}, {1, 3, 1}, {1, 1, 1} } )
setCombatArea(combat, area)

function onCastSpell(cid, var)
    return doCombat(cid, combat, var)
end
www.2800728.pun.pl www.lwie-wzgorze.pun.pl www.forumowagrasuperbakugan.pun.pl www.asg-orzesze.pun.pl www.serwer-azalia.pun.pl