Naja. Hab auch ne Costume Quest..
PHP Code:
--[[
-- Costume System
-- lvl x
-- Copyright ©Zymos
]]
quest costume begin
state start begin
function armor_icons(vnum)
local icons = {
[41003] = {41003},
[41004] = {41004},
[41005] = {41005},
[41006] = {41006},
[41007] = {41007},
[41008] = {41008},
[41009] = {41009},
[41010] = {41010},
[41011] = {41011},
[41012] = {41012},
[41013] = {41013},
[41014] = {41014},
[41015] = {41015},
[41016] = {41016},
[41017] = {41017},
[41018] = {41018},
[41019] = {41019},
[41020] = {41020},
[41021] = {41021},
[41022] = {41022},
[41023] = {41023},
[41024] = {41024},
[41025] = {41025},
[41026] = {41026},
[41027] = {41027},
[41028] = {41028},
[41029] = {41003},
[41030] = {41004},
[41031] = {41005},
[41032] = {41006},
[41033] = {41007},
[41034] = {41008},
[41035] = {41009},
[41036] = {41010},
[41037] = {41011},
[41038] = {41012},
[41039] = {41013},
[41040] = {41014},
[41041] = {41015},
[41042] = {41016},
[41043] = {41017},
[41044] = {41018},
[41045] = {41019},
[41046] = {41020},
[41047] = {41021},
[41048] = {41022},
[41049] = {41023},
[41050] = {41024},
[41051] = {41025},
[41052] = {41026},
[41053] = {41027},
[41054] = {41028},
[41055] = {41055},
[41056] = {41056},
[41057] = {41057},
[41058] = {41058},
[41059] = {41059},
[41060] = {41060},
[41061] = {41061},
[41062] = {41062},
[41063] = {41063},
[41064] = {41064},
[41065] = {41065},
[41066] = {41066},
[41067] = {41067},
[41068] = {41068},
[41069] = {41069},
[41070] = {41070},
[41071] = {41071},
[41072] = {41072},
[41073] = {41073},
[41074] = {41074},
[41075] = {41075},
[41076] = {41076},
[41077] = {41077},
[41078] = {41078},
[41079] = {41079},
[41080] = {41080},
[41081] = {41081},
[41082] = {41082},
[41083] = {41083},
[41084] = {41084},
[41085] = {41055},
[41086] = {41056},
[41087] = {41057},
[41088] = {41058},
[41089] = {41059},
[41090] = {41060},
[41091] = {41061},
[41092] = {41062},
[41093] = {41063},
[41094] = {41064},
[41095] = {41065},
[41096] = {41066},
[41097] = {41067},
[41098] = {41068},
[41099] = {41069},
[41100] = {41070},
[41101] = {41071},
[41102] = {41072},
[41103] = {41073},
[41104] = {41074},
[41105] = {41075},
[41106] = {41076},
[41107] = {41077},
[41108] = {41078},
[41109] = {41079},
[41110] = {41080},
[41111] = {41081},
[41112] = {41082},
[41113] = {41083},
[41114] = {41084}
}
return icons[vnum][1]
end
function hair_icons(vnum,index)
local partnumbers_hair = {
[45003] = {5002,45003}, --Kopftuch (m)
[45004] = {5002,45004}, --Kopftuch (w)
[45005] = {5003,45005}, --Fechtfrisur (m)
[45006] = {5003,45006}, --Fechtfrisur (w)
[45007] = {5004,45007}, --Fußballfrisur GER (m)
[45008] = {5004,45008}, --Fußballfrisur GER (w)
[45009] = {5005,45009}, --Boxfrisur GER (m)
[45010] = {5005,45010}, --Boxfrisur GER (w)
[45011] = {5002,45003}, --Kopftuch (m)
[45012] = {5002,45004}, --Kopftuch (w)
[45013] = {5003,45005}, --Fechtfrisur (m)
[45014] = {5003,45006}, --Fechtfrisur (w)
[45015] = {5004,45007}, --Fußballfrisur GER (m)
[45016] = {5004,45008}, --Fußballfrisur GER (w)
[45017] = {5005,45009}, --Boxfrisur GER (m)
[45018] = {5005,45010}, --Boxfrisur GER (w)
[45019] = {5006,45010}, --Boxfrisur TUR (w)
[45020] = {5007,45010}, --Boxfrisur BRA (w)
[45021] = {5008,45010}, --Boxfrisur Olympia (w)
[45022] = {5009,45010}, --Boxfrisur FRA (w)
[45023] = {5010,45010}, --Boxfrisur ITA (w)
[45024] = {5011,45010}, --Boxfrisur POL (w)
[45025] = {5012,45010}, --Boxfrisur ROU (w)
[45026] = {5013,45010}, --Boxfrisur ESP (w)
[45027] = {5014,45008}, --Fußballfrisur TUR (w)
[45028] = {5015,45008}, --Fußballfrisur BRA (w)
[45029] = {5016,45008}, --Fußballfrisur Olympia(w
[45030] = {5017,45008}, --Fußballfrisur FRA (w)
[45031] = {5018,45008}, --Fußballfrisur ITA (w)
[45032] = {5019,45008}, --Fußballfrisur POL (w)
[45033] = {5020,45008}, --Fußballfrisur ROU (w)
[45034] = {5021,45008}, --Fußballfrisur ESP (w)
[45035] = {5006,45010}, --Boxfrisur TUR (w)
[45036] = {5007,45010}, --Boxfrisur BRA (w)
[45037] = {5008,45010}, --Boxfrisur Olympia (w)
[45038] = {5009,45010}, --Boxfrisur FRA (w)
[45039] = {5010,45010}, --Boxfrisur ITA (w)
[45040] = {5011,45010}, --Boxfrisur POL (w)
[45041] = {5012,45010}, --Boxfrisur ROU (w)
[45042] = {5013,45010}, --Boxfrisur ESP (w)
[45043] = {5014,45008}, --Fußballfrisur TUR (w)
[45044] = {5015,45008}, --Fußballfrisur BRA (w)
[45045] = {5016,45008}, --Fußballfrisur Olympia(w
[45046] = {5017,45008}, --Fußballfrisur FRA (w)
[45047] = {5018,45008}, --Fußballfrisur ITA (w)
[45048] = {5019,45008}, --Fußballfrisur POL (w)
[45049] = {5020,45008}, --Fußballfrisur ROU (w)
[45050] = {5021,45008} --Fußballfrisur ESP (w)
}
return partnumbers_hair[vnum][index]
end
when 41003.use
or 41004.use
or 41005.use
or 41006.use
or 41007.use
or 41008.use
or 41009.use
or 41010.use
or 41011.use
or 41012.use
or 41013.use
or 41014.use
or 41015.use
or 41016.use
or 41017.use
or 41018.use
or 41019.use
or 41020.use
or 41021.use
or 41022.use
or 41023.use
or 41024.use
or 41025.use
or 41026.use
or 41027.use
or 41028.use
or 41029.use
or 41030.use
or 41031.use
or 41032.use
or 41033.use
or 41034.use
or 41035.use
or 41036.use
or 41037.use
or 41038.use
or 41039.use
or 41040.use
or 41041.use
or 41042.use
or 41043.use
or 41044.use
or 41045.use
or 41046.use
or 41047.use
or 41048.use
or 41049.use
or 41050.use
or 41051.use
or 41052.use
or 41053.use
or 41054.use
or 41055.use
or 41056.use
or 41057.use
or 41058.use
or 41059.use
or 41060.use
or 41061.use
or 41062.use
or 41063.use
or 41064.use
or 41065.use
or 41066.use
or 41067.use
or 41068.use
or 41069.use
or 41070.use
or 41071.use
or 41072.use
or 41073.use
or 41074.use
or 41075.use
or 41076.use
or 41077.use
or 41078.use
or 41079.use
or 41080.use
or 41081.use
or 41082.use
or 41083.use
or 41084.use
or 41085.use
or 41086.use
or 41087.use
or 41088.use
or 41089.use
or 41090.use
or 41091.use
or 41092.use
or 41093.use
or 41094.use
or 41095.use
or 41096.use
or 41097.use
or 41098.use
or 41099.use
or 41100.use
or 41101.use
or 41102.use
or 41103.use
or 41104.use
or 41105.use
or 41106.use
or 41107.use
or 41108.use
or 41109.use
or 41110.use
or 41111.use
or 41112.use
or 41113.use
or 41114.use begin
local icon = costume.armor_icons(item.get_vnum())
--local icon = icons[item.get_vnum()][1]
--Wenn es sich irgendwie verbuggen sollte.. #START#
if pc.getqf("main_part") >= 41003 and pc.getqf("main_part") <= 41114 then
pc.set_part(PART_MAIN, 0)
cmdchat("CostumeMain 0")
pc.setqf("main_part",0)
pc.setqf("costume_main_active",0)
debug_chat("BUG! #Kostüm wird ausgezogen. Rüstungsskins wird entfernt.")
return
end
-- #ENDE
if pc.getqf("costume_main_active") == 1 then
--if pc.get_part(PART_MAIN) >= 41003 and pc.get_part(PART_MAIN) <= 41114 then
pc.set_part(PART_MAIN, pc.getqf("main_part"))
pc.setqf("costum_main_item",0)
cmdchat("CostumeMain 0")
debug_chat("Costume Deaktiviert")
pc.setqf("costume_main_active",0)
syschat("Dein Küstum-Rüstung wurde ausgezogen erfolgreich.")
else
local new = item.get_vnum()
pc.setqf("main_part",pc.get_part(PART_MAIN))
pc.set_part(PART_MAIN, new)
pc.setqf("costum_main_item",new)
cmdchat("CostumeMain "..icon.."")
debug_chat("Costume Aktiviert")
pc.setqf("costume_main_active",1)
syschat("Dein Küstum-Rüstung wurde angezogen erfolgreich.")
end
loop_timer("check_costume_main",5)
end
when 45003.use
or 45004.use
or 45005.use
or 45006.use
or 45007.use
or 45008.use
or 45009.use
or 45010.use
or 45011.use
or 45012.use
or 45013.use
or 45014.use
or 45015.use
or 45016.use
or 45017.use
or 45018.use
or 45019.use
or 45020.use
or 45021.use
or 45022.use
or 45023.use
or 45024.use
or 45025.use
or 45026.use
or 45027.use
or 45028.use
or 45029.use
or 45030.use
or 45031.use
or 45032.use
or 45033.use
or 45034.use
or 45035.use
or 45036.use
or 45037.use
or 45038.use
or 45039.use
or 45040.use
or 45041.use
or 45042.use
or 45043.use
or 45044.use
or 45045.use
or 45046.use
or 45047.use
or 45048.use
or 45049.use
or 45050.use begin
if pc.get_part(PART_HAIR) >= 5001 and pc.get_part(PART_HAIR) <= 5021 then
pc.set_part(PART_HAIR, pc.getqf("hair_part"))
cmdchat("CostumeHair 0")
--debug_chat("Costum Haair Deaktiviert #03")
syschat("Dein Küstum-Haare wurden erfolgreich ausgezogen.")
else
--select '[',vnum,'] = {',value3,'}',' --',locale_name from player.item_proto where vnum >= 45003 and vnum <= 45050
local vnum = item.get_vnum()
local icon = costume.hair_icons(vnum,2)
--local icon = partnumbers_hair[vnum][2]
if pc.get_part(PART_HAIR) <= 5001 then
pc.setqf("hair_part",pc.get_part(PART_HAIR))
end
pc.set_part(PART_HAIR, costume.hair_icons(vnum,1))
pc.setqf("costum_hair_item",vnum)
cmdchat("CostumeHair "..icon.."")
--debug_chat("Costum Haair Aktiviert #02")
syschat("Dein Küstum-Haare wurden erfolgreich angezogen.")
end
loop_timer("check_costume_hair",5)
end
function check_costume_hair()
local hair_vum = pc.getqf("costum_hair_item")
if pc.count_item(hair_vum) == 0 and pc.get_part(PART_HAIR) >= 5001 and pc.get_part(PART_HAIR) <= 5021 then
pc.set_part(PART_HAIR, pc.getqf("hair_part"))
cmdchat("CostumeHair 0")
--debug_chat("lösche HAIR #01")
cleartimer("check_costume_hair")
--debug_chat("Costum Haair Aktiviert #06")
elseif pc.get_part(PART_HAIR) >= 5001 and pc.get_part(PART_HAIR) <= 5021 then
local icon = costume.hair_icons(hair_vum,2)
cmdchat("CostumeHair "..icon.."")
--debug_chat("Costum Haair Aktiviert #05")
end
end
when leave or unmount or enter or letter begin
costume.check_costume_main()
costume.check_costume_hair()
end
function check_costume_main()
if pc.getqf("costume_main_active") == 1 and pc.getqf("costum_main_item") >= 41003 and pc.getqf("costum_main_item") <= 41114 then
local icon = costume.armor_icons(pc.getqf("costum_main_item"))
--debug_chat("NOCH AN COSTUME")
--cmdchat("CostumeMain 0")
cmdchat("CostumeMain "..icon.."")
pc.set_part(PART_MAIN, pc.getqf("costum_main_item"))
elseif pc.getqf("costum_main_item") == 0 then
pc.set_part(PART_MAIN, pc.get_armor())
cmdchat("CostumeMain 0")
--debug_chat("Lösche Costume")
pc.setqf("costume_main_active",0)
cleartimer("check_costume_main")
else
pc.set_part(PART_MAIN, pc.get_armor())
cmdchat("CostumeMain 0")
--debug_chat("Lösche Costume")
pc.setqf("costume_main_active",0)
cleartimer("check_costume_main")
end
if pc.count_item(pc.getqf("costum_main_item")) == 0 and pc.getqf("costume_main_active") == 1 then
pc.set_part(PART_MAIN,0)
cmdchat("CostumeMain 0")
--debug_chat("lösche Costume")
pc.setqf("costume_main_active",0)
cleartimer("check_costume_main")
end
end
when check_costume_main.timer begin
costume.check_costume_main()
costume.check_costume_hair()
end
when check_costume_hair.timer begin
costume.check_costume_hair()
end
when login begin
costume.check_costume_main()
costume.check_costume_hair()
loop_timer("check_costume_main",5)
loop_timer("check_costume_hair",5)
end
end
end
Etwas unsauber gearbeitet einigen stellen...
Es wird keine Mysql schnittstelle benötigt. Reines Lua :)