• logo_cipsoft
    Nowe serwery zostały otwarte 27 Sie 2025:
    Escura (Retro Open PvP) Mystera (Retro Open PvP) us_logo Penumbra (Retro Open PvP)

Reborn System ; ]

Status
Zamknięty.

pejos

User
Dołączył
Kwiecień 28, 2011
Posty
44
Liczba reakcji
2
Witam, posiadam skrypt na reborn system, polega to na tym ?e wbijasz XX level posta? reloga si? do temple przyk?adowo resetuje si? tylko level a skille ,hp i mana zostaja tak?e eq :>​

W bazie danych wykonaj:
Kod:
ALTER TABLE `players` ADD `reborns` INT NOT NULL DEFAULT 0;

do lib/function.lua dodaj
Kod:
function getPlayerReborn(n)
	return db.getResult("SELECT reborns FROM players WHERE name="..db.escapeString(n)..""):getDataInt("reborns")
end

do creaturescripts/scripts/login.lua dodaj:
Kod:
registerCreatureEvent(cid, "onLookReborn")

do creaturescripts/creaturescripts.xml dodaj:
Kod:
	<event type="look" name="onLookReborn" event="script" value="reborn/lookReborn.lua"/>

lookReborn.lua :
Kod:
	function onLook(cid, thing, position, lookDistance)
		if(isPlayer(thing.uid)) then
		local r = getPlayerReborn(getCreatureName(thing.uid))
		if r <= 0 then
				doPlayerSendTextMessage(cid, 20, ""..getCreatureName(thing.uid).." nie ma zadnego rebornu.")
			else
				doPlayerSendTextMessage(cid, 20, ""..getCreatureName(thing.uid).." ma "..r.." reborn/?w.")
			end
		end
		return true
	end
do lib/function.lua dodaj
Kod:
function reborn(n)
	db.executeQuery("UPDATE players SET reborns=("..getPlayerReborn(n).." + 1), level="..confReborn.newLevel..", experience = "..confReborn.newExp..", posx="..confReborn.rebornPos.x..", posy="..confReborn.rebornPos.y..", posz="..confReborn.rebornPos.z.." WHERE name = "..db.escapeString(n).."")
end

do creaturescripts/scripts/login.lua dodaj:
Kod:
registerCreatureEvent(cid, "doReborn")

do creaturescripts/creaturescripts.xml dodaj:
Kod:
	<event type="advance" name="doReborn" event="script" value="reborn/reborn.lua"/>

Skonfiguruj skrypt w pliku reborn.lua
Kod:
confReborn = {
	levelToReborn = 100000, -- lvl wymagany na reborn
	newLevel = 8, -- lvl gracza po rebornie
	newExp = 4200, -- ilosc expa gracza po rebornie, musi odpowiadac lvlowi!
	rebornPos = {x = 1000, y = 1000, z = 7}, -- pos gracza po rebornie
	
	blokady = false, --[[ aby wlaczyc blokady wpisz true
						  aby byly wylaczone wpisz false]]--
						  
	-- TE LINIJKI MAJA ZNACZENIE TYLKO, JEZELI BLOKADY SA WLACZONE
	hoursToReborn = 48, -- godzin do nastepnego rebornu jezeli gracz ma MNIEJ niz 10 reborn
	hourstoHighReborn = 96, -- godzin do nastepnego rebornu jezeli gracz ma 10 lub wyzszy reborn
}

function onAdvance(cid, skill, oldlevel, newlevel)
	if skill == SKILL__LEVEL and newlevel >= confReborn.levelToReborn then
		if confReborn.blokady then
			if(os.time() < getPlayerStorageValue(cid,48720)) then
				return true
			end
		end
		
		local n = getCreatureName(cid)
		doWriteLogFile("data/logs/reborns.txt", "[".. getCreatureName(cid) .."]: z "..getPlayerReborn(n).." do ".. getPlayerReborn(n)+1 ..".\n")
		if confReborn.blokady then
			if getPlayerReborn(n) > 10 then
				cd = confReborn.hoursToHighReborn * 60 * 60 -- na godziny godzin
			else
				cd = confReborn.hoursToReborn * 60 * 60 -- 48 godzin
			end
			setPlayerStorageValue(cid,48720,os.time()+cd)
		end
		doRemoveCreature(cid)
		reborn(n)
	end
	return true
end
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Pomog?em ? Repucik plax : >

Wrazie problem?w pisa? pod tematem..
A co do skryptu nie jest dopracowany czyli ?e po ka?dym rebie zwieksza?o sie DMG czar?w itp, + zmiejsza?o expo :/
Ale mo?na tam doda? blokady czyli wbijasz 1 reborn na xx dni/godzin.
 
Odp: Reborn System ; ]

Sam napisa?e? skrypt?
 
Status
Zamknięty.
Do góry