Kiedyś gdy zaczynałem bawić się (bo nic innego nie umiałem) ots'ami w mej głowie pojawił się pomysł zrobienia skryptu na krzesło elektryczne...
Ostatnio postanowiłem zrobić ots (tym razem rpg), niestety projekt ten raczej nie wypali... Jednak zrobiłem kilka skryptów i postanowiłem dodać najciekawszy z nich - krzesło elektryczne.
Na początek będzie potrzebna nam taka sala:
Następnie tworzymy w ots\data\actions\scripts plik krzeslo.lua i wklejamy do niego następujący tekst:
Kod:
-- Krzeslo elektryczne zrobione przez Smoczek Leon --
-- Electric chair by Smoczek Leon --
function onUse(cid, item, frompos, item2, topos)
if item.uid == 7666 and item.itemid == 1945 then
player1pos = {x=330, y=355, z=12, stackpos=253} -- pozycja krzesla
player1 = getThingfromPos(player1pos)
if player1.itemid > 0 then
player1heal = getPlayerHealth(player1.uid)
player1mana = getPlayerMana(player1.uid)
smierc = (player1mana) + (player1heal)
skazany = getPlayerName(player1.uid)
doPlayerAddHealth(player1.uid,-smierc)
doSendMagicEffect(player1pos,11)
doTransformItem(item.uid,item.itemid+1)
else
doPlayerSendCancel(cid,"Nie ma kogo zabic :(")
end
elseif item.uid == 7666 and item.itemid == 1946 then
cialopos = {x=330, y=355, z=12, stackpos=2} -- pozycja krzesla - nie zmieniaj czerwonego!
cialo = getThingfromPos(cialopos)
cialo2pos = {x=330, y=355, z=12, stackpos=1} -- pozycja krzesla - nie zmieniaj czerwonego!
cialo2 = getThingfromPos(cialo2pos)
newpos = {x=332, y=355, z=12} -- pozycja ciala po przeniesieniu
doRemoveItem(cialo2.uid,1)
doTeleportThing(cialo.uid,newpos)
doTransformItem(item.uid,item.itemid-1)
else
return 0
end
return 1
end
Kod:
<action uniqueid="7666" script="krzeslo.lua" />
ots\data\talkactions\scripts execution.lua
Kod:
-- Krzeslo elektryczne zrobione przez Smoczek Leon --
-- Electric chair by Smoczek Leon --
function onSay(cid, words, param)
skazany = getPlayerByName(param)
krzeslo = {x=330, y=355, z=12}
if getPlayerAccess(cid) >= 1 then
if isPlayer(skazany) == 1 then
if words == "execution" then
doTeleportThing(skazany, krzeslo)
mayNotLogout(skazany, 10)
doPlayerSay(cid, "Player "..param.." condemn to electric chair", 9)
end
else
doPlayerSendCancel(cid,"Player is not online.")
end
end
end
Kod:
-- Krzeslo elektryczne zrobione przez Smoczek Leon --
-- Electric chair by Smoczek Leon --
local condition = createConditionObject(COMBAT_ENERGYDAMAGE)
addDamageCondition(condition, 20000, 3000, -0)
function onSay(cid, words, param)
skazany = getPlayerByName(param)
krzeslo = {x=330, y=355, z=12}
if getPlayerAccess(cid) >= 1 then
if isPlayer(skazany) == 1 then
if words == "execution" then
doTeleportThing(skazany, krzeslo)
doTargetCombatCondition(0, skazany, condition, CONST_ME_NONE)
doPlayerSay(cid, "Player "..param.." condemn to electric chair", 9)
end
else
doPlayerSendCancel(cid,"Player is not online.")
end
end
end
Kod:
<talkaction words="execution" script="execution.lua" />
Pogrubioną czcionką napisałem pozycje krzesła.
I będzie działało to tak:
GM/God/Tutor zauważył osobę która używa np mc albo tibie auto. Wpisuje execution "nick_gracza i osoba ta jest teleportowana na krzesło. Następnie gm może dać wiadomość że zaraz odbędzie się egzekucja tego i tego zioma. Następnie ciągnie za czerwoną gałeczkę (Dog in the Fod:P). Skazany zostaje porażony prądem i umiera. Drugie pociągnięcie usunie krew z pod krzesła i przeteleportuje ciało na wybrane współrzędne
Koniec, dziękuje za uwagę :)
Zakładki