Ir para conteúdo
  • Cadastre-se

Suporte addManaSpentInPvPZone = false


Posts Recomendados

TFS 0.4

 

 

 

 

Citar

Alguém sabe por que diabos a MANA e a LIFE  ainda recupera em area pz? Já alterei no config.lua e fiz a mesma coisa na source, mas ainda continua recuperando mana e a life dentro da area PZ.
 

 

Você tem o código disponível? Se tiver publique-o aqui: 

 -- The Forgotten Server Config

	-- Account manager
	accountManager = false
	namelockManager = false
	newPlayerChooseTown = false
	newPlayerChooseVoc = true
	newPlayerSpawnPosX = 32369
	newPlayerSpawnPosY = 32241
	newPlayerSpawnPosZ = 7
	newPlayerTownId = 1
	newPlayerLevel = 8
	newPlayerMagicLevel = 0
	generateAccountNumber = false
	generateAccountSalt = false
	accountSize = 10

	-- Unjustified kills
	-- NOTE: *Banishment and *BlackSkull variables are >summed up<
	-- (dailyFragsToRedSkull + dailyFragsToBanishment) with their
	-- *RedSkull equivalents.
	-- Auto banishing works only if useBlackSkull set to negative.
	-- advancedFragList is not advised if you use huge frags
	-- requirements.
	redSkullLength = 30 * 24 * 60 * 60
	blackSkullLength = 45 * 24 * 60 * 60
	dailyFragsToRedSkull = 3
	weeklyFragsToRedSkull = 5
	monthlyFragsToRedSkull = 10
	dailyFragsToBlackSkull = dailyFragsToRedSkull
	weeklyFragsToBlackSkull = weeklyFragsToRedSkull
	monthlyFragsToBlackSkull = monthlyFragsToRedSkull
	dailyFragsToBanishment = dailyFragsToRedSkull
	weeklyFragsToBanishment = weeklyFragsToRedSkull
	monthlyFragsToBanishment = monthlyFragsToRedSkull
	blackSkulledDeathHealth = 40
	blackSkulledDeathMana = 0
	useBlackSkull = true
	useFragHandler = true
	advancedFragList = false

	-- Banishments
	-- violationNameReportActionType 1 = just a report, 2 = name lock, 3 = player banishment
	-- killsBanLength works only if useBlackSkull option is disabled.
	notationsToBan = 3
	warningsToFinalBan = 4
	warningsToDeletion = 5
	banLength = 7 * 24 * 60 * 60
	killsBanLength = 7 * 24 * 60 * 60
	finalBanLength = 30 * 24 * 60 * 60
	ipBanishmentLength = 1 * 24 * 60 * 60
	broadcastBanishments = true
	maxViolationCommentSize = 200
	violationNameReportActionType = 2
	autoBanishUnknownBytes = false
	enableCast = true

	-- Battle
	-- NOTE: showHealingDamageForMonsters inheritates from showHealingDamage.
	-- loginProtectionPeriod is the famous Tibia anti-magebomb system.
	-- deathLostPercent set to nil enables manual mode.
	worldType = "open"
	protectionLevel = 60
	pvpTileIgnoreLevelAndVocationProtection = true
	pzLocked = 60 * 1000
	huntingDuration = 60 * 1000
	criticalHitChance = 7
	criticalHitMultiplier = 1
	displayCriticalHitNotify = false
	removeWeaponAmmunition = true
	removeWeaponCharges = true
	removeRuneCharges = true
	whiteSkullTime = 15 * 60 * 1000
	noDamageToSameLookfeet = false
	showHealingDamage = false
	showHealingDamageForMonsters = false
	fieldOwnershipDuration = 5 * 1000
	stopAttackingAtExit = false
	oldConditionAccuracy = false
	loginProtectionPeriod = 10 * 1000
	deathLostPercent = 10
	stairhopDelay = 2 * 1000
	pushCreatureDelay = 2 * 1000
	deathContainerId = 1987
	gainExperienceColor = 215
	addManaSpentInPvPZone = false
	squareColor = 0
	allowFightback = true
	fistBaseAttack = 7
	optionalWarAttackableAlly = false
	healthHealingColor = COLOR_GREEN
	manaHealingColor = COLOR_DARKPURPLE

	-- Connection config
	worldId = 0
	ip = "tibiaking.com"
	bindOnlyGlobalAddress = false
	loginPort = 7171
	gamePort = 7172
	loginTries = 10
	retryTimeout = 5 * 1000
	loginTimeout = 60 * 1000
	maxPlayers = 3000
	motd = "Welcome to the tibiaking Server!"
	displayOnOrOffAtCharlist = false
	onePlayerOnlinePerAccount = true
	allowClones = false
	serverName = "nome"
	loginMessage = "Welcome to the tibiaking Server!"
	statusTimeout = 5 * 60 * 1000
	replaceKickOnLogin = true
	forceSlowConnectionsToDisconnect = false
	loginOnlyWithLoginServer = false
	premiumPlayerSkipWaitList = true
	max_packets_per_second = 1000

    -- Anti-Divulgação
	advertisingBlock = ".net;servegame;no-ip;.hopto;.net;.info;.org;.zapto;.me;.ddns;.pl;.biz"
	
	-- Anti-Push
	useAntiPush = true
	antiPushDelay = 500
	antiPushItems = "2148,2152,2160,3976" 
	
	-- Database
	-- NOTE: sqlFile is used only by sqlite database, and sqlKeepAlive by mysql database.
	-- To disable sqlKeepAlive such as mysqlReadTimeout use 0 value.
	-- encryptionType can be plain, md5, sha1, sha256, sha512 or vahash.
	sqlType = "mysql"
	sqlHost = "127.0.0.1"
	sqlPort = 3306
	sqlUser = "root"
	sqlPass = ""
	sqlDatabase = "database"
	sqlFile = "database.s3db"
	sqlKeepAlive = 0
	mysqlReadTimeout = 10
	mysqlWriteTimeout = 10
	mysqlReconnectionAttempts = 5
	encryptionType = "sha1"

	-- Deathlist
	deathListEnabled = true
	deathListRequiredTime = 1 * 60 * 1000
	deathAssistCount = 19
	maxDeathRecords = 5

	-- Guilds
	ingameGuildManagement = false
	levelToFormGuild = 8
	premiumDaysToFormGuild = 0
	guildNameMinLength = 4
	guildNameMaxLength = 20
	maxPlayerGuild = 999

	-- Highscores
	highscoreDisplayPlayers = 15
	updateHighscoresAfterMinutes = 60

	-- Houses
	buyableAndSellableHouses = true
	houseNeedPremium = true
	bedsRequirePremium = true
	levelToBuyHouse = 1
	housesPerAccount = 0
	houseRentAsPrice = false
	housePriceAsRent = false
	housePriceEachSquare = 1000
	houseRentPeriod = "never"
	houseCleanOld = 0
	guildHalls = false
	houseSkipInitialRent = true

	-- Item usage
	timeBetweenActions = 500
	timeBetweenExActions = 1000
	timeBetweenCustomActions = 1000
	hotkeyAimbotEnabled = true

	-- Exhausts
	onBuy = 500
	onSell = 500
	changeOutfit = 500

	-- Map
	-- NOTE: storeTrash costs more memory, but will perform alot faster cleaning.
	mapName = "world.otbm"
	mapAuthor = "Eu"
	randomizeTiles = true
	storeTrash = true
	cleanProtectedZones = true
	mailboxDisabledTowns = ""
    
	-- Mailbox Block
	mailMaxAttempts = 5
	mailBlockPeriod = 30 * 60 * 1000
	mailAttemptsFadeTime = 5 * 60 * 1000
	
	-- Process
	-- NOTE: defaultPriority works only on Windows and niceLevel on *nix
	-- niceLevel works only on *nix systems
	-- coresUsed are seperated by comma cores ids used by server process,
	-- default is -1, so it stays untouched (automaticaly assigned by OS).
	defaultPriority = "high"
	niceLevel = 5
	coresUsed = "-1"

	-- Startup
	startupDatabaseOptimization = true
	updatePremiumStateAtStartup = true
	confirmOutdatedVersion = false
	skipItemsVersionCheck = true

	-- Spells
	formulaLevel = 5.0
	formulaMagic = 1.0
	bufferMutedOnSpellFailure = false
	spellNameInsteadOfWords = false
	emoteSpells = false
	hideSpellWords = false
	unifiedSpells = true

	-- Outfits
	allowChangeOutfit = true
	allowChangeColors = true
	allowChangeAddons = true
	disableOutfitsForPrivilegedPlayers = false
	addonsOnlyPremium = false

	-- Miscellaneous
	-- NOTE: promptExceptionTracerErrorBox works only with precompiled support feature,
	-- called "exception tracer" (__EXCEPTION_TRACER__ flag).
	dataDirectory = "data/"
	logsDirectory = "data/logs/"
	bankSystem = true
	displaySkillLevelOnAdvance = true
	promptExceptionTracerErrorBox = true
	maximumDoorLevel = 500
	maxMessageBuffer = 4
	tradeLimit = 100
	defaultDepotSize = 1000
	defaultDepotSizePremium = 5000
	classicEquipmentSlots = true

	-- VIP list
	separateVipListPerCharacter = false
	vipListDefaultLimit = 20
	vipListDefaultPremiumLimit = 100

	-- Saving-related
	-- useHouseDataStorage usage may be found at README.
	saveGlobalStorage = true
	useHouseDataStorage = true
	storePlayerDirection = false

	-- Loot
	-- monsterLootMessage 0 to disable, 1 - only party, 2 - only player, 3 - party or player (like Tibia's)
	checkCorpseOwner = true
	monsterLootMessage = 0
	monsterLootMessageType = 25

	-- Ghost mode
	ghostModeInvisibleEffect = true
	ghostModeSpellEffects = true

	-- Limits
	idleWarningTime = 14 * 60 * 1000
	idleKickTime = 15 * 60 * 1000
	tileLimit = 0
	protectionTileLimit = 0
	houseTileLimit = 0

	-- Premium-related
	freePremium = false
	premiumForPromotion = false

	-- Blessings
	-- NOTE: blessingReduction* regards items/containers loss.
	-- eachBlessReduction is how much each bless reduces the experience/magic/skills loss.
	blessings = true
	blessingOnlyPremium = false
	blessingReductionBase = 30
	blessingReductionDecrement = 5
	eachBlessReduction = 8

	-- Rates
	-- NOTE: experienceStages configuration is located in data/XML/stages.xml.
	-- rateExperienceFromPlayers 0 to disable.
	experienceStages = true
	rateExperience = 5.0
	rateExperienceFromPlayers = 0
	rateSkill = 30.0
	rateMagic = 10.0
	rateLoot = 4.0
	rateSpawn = 2

	-- Monster rates
	rateMonsterHealth = 1.0
	rateMonsterMana = 1.0
	rateMonsterAttack = 1.0
	rateMonsterDefense = 1.0

	-- Experience from players
	-- NOTE: min~Threshold* set to 0 will disable the minimum threshold:
	-- player will gain experience from every lower leveled player.
	-- max~Threshold* set to 0 will disable the maximum threshold:
	-- player will gain experience from every higher leveled player.
	minLevelThresholdForKilledPlayer = 0.9
	maxLevelThresholdForKilledPlayer = 1.1

	-- Stamina
	-- NOTE: Stamina is stored in miliseconds, so seconds are multiplied by 1000.
	-- rateStaminaHits multiplies every hit done a creature, which are later
	-- multiplied by player attack speed.
	-- rateStaminaGain is multiplying every second of logged out time, eg:
	-- 60 * 1000 / 3 = 20 seconds, what gives 1 stamina minute for 3 being logged off.
	-- rateStaminaThresholdGain is dividing in case the normal gain (that is
	-- multiplied by rateStaminaGain, btw.) passed above threshold, eg:
	-- 60 * 1000 / 3 = 20 / 4 = 5 seconds (3 * 4 = 12 minutes for 1 stamina minute).
	-- staminaRatingLimit* is in minutes.
	rateStaminaLoss = 1
	rateStaminaGain = 3
	rateStaminaThresholdGain = 12
	staminaRatingLimitTop = 40 * 60
	staminaRatingLimitBottom = 14 * 60
	staminaLootLimit = 14 * 60
	rateStaminaAboveNormal = 1.5
	rateStaminaUnderNormal = 0.5
	staminaThresholdOnlyPremium = true

	-- Party
	-- NOTE: experienceShareLevelDifference is float number.
	-- experienceShareLevelDifference is highestLevel * value
	experienceShareRadiusX = 30
	experienceShareRadiusY = 30
	experienceShareRadiusZ = 1
	experienceShareLevelDifference = 2 / 3
	extraPartyExperienceLimit = 20
	extraPartyExperiencePercent = 5
	experienceShareActivity = 2 * 60 * 1000

	-- Global save
	-- NOTE: globalSaveHour means like 03:00, not that it will save every 3 hours,
	-- if you want such a system please check out data/globalevents/globalevents.xml.
	globalSaveEnabled = true
	globalSaveHour = 06
	globalSaveMinute = 00
	shutdownAtGlobalSave = true
	cleanMapAtGlobalSave = false

	-- Spawns
	deSpawnRange = 2
	deSpawnRadius = 50
	monsterSpawnWalkback = true
	allowBlockSpawn = true

	-- Summons
	maxPlayerSummons = 2
	teleportAllSummons = false
	teleportPlayerSummons = false

	-- Status
	statusPort = 7171
	ownerName = ""
	ownerEmail = "[email protected]"
	url = "http://tibiaking.com/"
	location = "Brazil"
	displayGamemastersWithOnlineCommand = false

	-- Logs
	displayPlayersLogging = true
	prefixChannelLogs = ""
	runFile = "server/run.log"
	outputLog = "server/out.log"
	truncateLogsOnStartup = false
	logsPlayers = false

	-- Manager
	-- NOTE: managerPassword left blank disables manager.
	managerPort = 7171
	managerLogs = true
	managerPassword = ""
	managerLocalhostOnly = true
	managerConnectionsLimit = 1

	-- Admin
	-- NOTE: adminPassword left blank disables manager.
	-- Set to anything if you set adminRequireLogin to false.
	-- adminEncryption available options: rsa1024xtea;
	-- remember to set correct data!
	adminPort = 7171
	adminLogs = true
	adminPassword = ""
	adminLocalhostOnly = true
	adminConnectionsLimit = 1
	adminRequireLogin = true
	adminEncryption = ""
	adminEncryptionData = ""

 

Você tem alguma imagem que possa auxiliar no problema? Se sim, coloque-a aqui. 

 

Editado por stauro (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

Você verificou se não existe nenhum creaturescript fazendo isso? Pode ser um script criado justamente para fazer essa regeneração.. Se quiser poste seu creaturescripts.xml que eu analiso.

Te ajudei? Clique em  Gostei ! 

²²²d¬¬b²²²

 

 

"She's got a smile that it seems to me...."  ♪♪

Link para o post
Compartilhar em outros sites
15 horas atrás, luangop disse:

Você verificou se não existe nenhum creaturescript fazendo isso? Pode ser um script criado justamente para fazer essa regeneração.. Se quiser poste seu creaturescripts.xml que eu analiso.

O hmup é o script que faz a vida e a mana ficar full quando upa. Já tirei esse script pra ver, mas ainda continua.

 

<?xml version="1.0" encoding="UTF-8"?>
<creaturescripts>
    <event type="login" name="PlayerLogin" event="script" value="login.lua"/>
    <event type="joinchannel" name="GuildMotd" event="script" value="guildmotd.lua"/>
    <event type="receivemail" name="Mail" event="script" value="mail.lua"/>
    <event type="reportbug" name="SaveReportBug" script="reportbug.lua"/>
    <event type="advance" name="AdvanceSave" event="script" value="advancesave.lua"/>
    <event type="logout" name="demonOakLogout" event="script" value="demonOakLogout.lua"/>
    <event type="death" name="demonOakDeath" event="script" value="demonOakDeath.lua"/>
    <event type="kill" name="ArenaKill" event="script" value="arenakill.lua"/>
    <event type="death" name="PythiusTheRotten" event="script" value="PythiusTheRotten.lua"/>
    <event type="think" name="TiraBattle" event="script" value="tirabattle.lua"/>
    <event type="advance" name="hmup" event="script" value="hmup.lua"/>
    <event type="advance" name="levelplayer" event="script" value="uplevelabsolute.lua"/>
    <event type="login" name="ItemsLogin" event="script" value="firstitems.lua"/>
    <!-- RING QUE DA SORTE -->
    <event type="kill" name="lootring" event="script" value="lootring.lua"/>
    <!-- Inquisition Full Quest -->
    <event type="kill" name="inquisitionPortals" script="Inquisition.lua"/>

    <event type="think" name="Idle" event="script" value="idle.lua"/>
    <event type="think" name="SkullCheck" event="script" value="skullcheck.lua"/>
    
    <!-- VIP / PREMIUM -->
    <event type="login" name="FimVip" event="script" value="fimvip.lua"/>
    <event type="login" name="FimPremium" event="script" value="fimpremium.lua"/>
    <!-- Top Frags -->
    <event type="kill" name="TopFrags" event="script" value="topfrags.lua" />
    <event type="login" name="RTopFrags" event="script" value="topfrags.lua" />

    <event type="attack" name="staminafiller" script="staminafiller.lua"/>
    <!-- CTF -->

</creaturescripts>

 

Editado por stauro (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

 

1 hora atrás, stauro disse:

O hmup é o script que faz a vida e a mana ficar full quando upa. Já tirei esse script pra ver, mas ainda continua.

 

<?xml version="1.0" encoding="UTF-8"?>
<creaturescripts>
    <event type="login" name="PlayerLogin" event="script" value="login.lua"/>
    <event type="joinchannel" name="GuildMotd" event="script" value="guildmotd.lua"/>
    <event type="receivemail" name="Mail" event="script" value="mail.lua"/>
    <event type="reportbug" name="SaveReportBug" script="reportbug.lua"/>
    <event type="advance" name="AdvanceSave" event="script" value="advancesave.lua"/>
    <event type="logout" name="demonOakLogout" event="script" value="demonOakLogout.lua"/>
    <event type="death" name="demonOakDeath" event="script" value="demonOakDeath.lua"/>
    <event type="kill" name="ArenaKill" event="script" value="arenakill.lua"/>
    <event type="death" name="PythiusTheRotten" event="script" value="PythiusTheRotten.lua"/>
    <event type="think" name="TiraBattle" event="script" value="tirabattle.lua"/>
    <event type="advance" name="hmup" event="script" value="hmup.lua"/>
    <event type="advance" name="levelplayer" event="script" value="uplevelabsolute.lua"/>
    <event type="login" name="ItemsLogin" event="script" value="firstitems.lua"/>
    <!-- RING QUE DA SORTE -->
    <event type="kill" name="lootring" event="script" value="lootring.lua"/>
    <!-- Inquisition Full Quest -->
    <event type="kill" name="inquisitionPortals" script="Inquisition.lua"/>

    <event type="think" name="Idle" event="script" value="idle.lua"/>
    <event type="think" name="SkullCheck" event="script" value="skullcheck.lua"/>
    
    <!-- VIP / PREMIUM -->
    <event type="login" name="FimVip" event="script" value="fimvip.lua"/>
    <event type="login" name="FimPremium" event="script" value="fimpremium.lua"/>
    <!-- Top Frags -->
    <event type="kill" name="TopFrags" event="script" value="topfrags.lua" />
    <event type="login" name="RTopFrags" event="script" value="topfrags.lua" />

    <event type="attack" name="staminafiller" script="staminafiller.lua"/>
    <!-- CTF -->

</creaturescripts>

 

 

Bom, creaturescript não é.. Sua source é custom? provavelmente é na source isso.

Te ajudei? Clique em  Gostei ! 

²²²d¬¬b²²²

 

 

"She's got a smile that it seems to me...."  ♪♪

Link para o post
Compartilhar em outros sites
1 minuto atrás, luangop disse:

 

 

Bom, creaturescript não é.. Sua source é custom? provavelmente é na source isso.

Sabe em qual arquivo da source? já mexi no "config.lua" da source, também não mudou nada

Link para o post
Compartilhar em outros sites
3 minutos atrás, stauro disse:

Sabe em qual arquivo da source? já mexi no "config.lua" da source, também não mudou nada

condition.cpp
na função

bool ConditionRegeneration::executeCondition(Creature* creature, int32_t interval)

 

Se não tiver conhecimento de C++, poste aqui a função toda para que eu analise. Lembrando que alterações na source requer compilar novamente depois.

Te ajudei? Clique em  Gostei ! 

²²²d¬¬b²²²

 

 

"She's got a smile that it seems to me...."  ♪♪

Link para o post
Compartilhar em outros sites
4 minutos atrás, luangop disse:

condition.cpp
na função

bool ConditionRegeneration::executeCondition(Creature* creature, int32_t interval)

 

Se não tiver conhecimento de C++, poste aqui a função toda para que eu analise. Lembrando que alterações na source requer compilar novamente depois.

bool ConditionRegeneration::serialize(PropWriteStream& propWriteStream)
{
    if(!ConditionGeneric::serialize(propWriteStream))
        return false;

    propWriteStream.addByte(CONDITIONATTR_HEALTHTICKS);
    propWriteStream.addType(healthTicks);

    propWriteStream.addByte(CONDITIONATTR_HEALTHGAIN);
    propWriteStream.addType(healthGain);

    propWriteStream.addByte(CONDITIONATTR_MANATICKS);
    propWriteStream.addType(manaTicks);

    propWriteStream.addByte(CONDITIONATTR_MANAGAIN);
    propWriteStream.addType(manaGain);
    return true;
}

bool ConditionRegeneration::executeCondition(Creature* creature, int32_t interval)
{
    internalHealthTicks += interval;
    internalManaTicks += interval;
    if(internalHealthTicks >= healthTicks)
    {
        internalHealthTicks = 0;
        creature->changeHealth(healthGain);
    }

    if(internalManaTicks >= manaTicks)
    {
        internalManaTicks = 0;
        creature->changeMana(manaGain);
    }

    return ConditionGeneric::executeCondition(creature, interval);
}

bool ConditionRegeneration::setParam(ConditionParam_t param, int32_t value)
{
    bool ret = ConditionGeneric::setParam(param, value);
    switch(param)
    {
        case CONDITIONPARAM_HEALTHGAIN:
            healthGain = value;
            return true;

        case CONDITIONPARAM_HEALTHTICKS:
            healthTicks = value;
            return true;

        case CONDITIONPARAM_MANAGAIN:
            manaGain = value;
            return true;

        case CONDITIONPARAM_MANATICKS:
            manaTicks = value;
            return true;

        default:
            break;
    }

    return ret;
}

 

 

É isso?

Link para o post
Compartilhar em outros sites
Agora, stauro disse:

bool ConditionRegeneration::serialize(PropWriteStream& propWriteStream)
{
    if(!ConditionGeneric::serialize(propWriteStream))
        return false;

    propWriteStream.addByte(CONDITIONATTR_HEALTHTICKS);
    propWriteStream.addType(healthTicks);

    propWriteStream.addByte(CONDITIONATTR_HEALTHGAIN);
    propWriteStream.addType(healthGain);

    propWriteStream.addByte(CONDITIONATTR_MANATICKS);
    propWriteStream.addType(manaTicks);

    propWriteStream.addByte(CONDITIONATTR_MANAGAIN);
    propWriteStream.addType(manaGain);
    return true;
}

bool ConditionRegeneration::executeCondition(Creature* creature, int32_t interval)
{
    internalHealthTicks += interval;
    internalManaTicks += interval;
    if(internalHealthTicks >= healthTicks)
    {
        internalHealthTicks = 0;
        creature->changeHealth(healthGain);
    }

    if(internalManaTicks >= manaTicks)
    {
        internalManaTicks = 0;
        creature->changeMana(manaGain);
    }

    return ConditionGeneric::executeCondition(creature, interval);
}

bool ConditionRegeneration::setParam(ConditionParam_t param, int32_t value)
{
    bool ret = ConditionGeneric::setParam(param, value);
    switch(param)
    {
        case CONDITIONPARAM_HEALTHGAIN:
            healthGain = value;
            return true;

        case CONDITIONPARAM_HEALTHTICKS:
            healthTicks = value;
            return true;

        case CONDITIONPARAM_MANAGAIN:
            manaGain = value;
            return true;

        case CONDITIONPARAM_MANATICKS:
            manaTicks = value;
            return true;

        default:
            break;
    }

    return ret;
}

 

 

É isso?

 

Só essa parte:

bool ConditionRegeneration::executeCondition(Creature* creature, int32_t interval)
{
    internalHealthTicks += interval;
    internalManaTicks += interval;
    if(internalHealthTicks >= healthTicks)
    {
        internalHealthTicks = 0;
        creature->changeHealth(healthGain);
    }

    if(internalManaTicks >= manaTicks)
    {
        internalManaTicks = 0;
        creature->changeMana(manaGain);
    }

    return ConditionGeneric::executeCondition(creature, interval);
}

 

Muda para isso:
 

bool ConditionRegeneration::executeCondition(Creature* creature, int32_t interval)
{
	internalHealthTicks += interval;
	internalManaTicks += interval;
	if(creature->getZone() != ZONE_PROTECTION)
	{
		if(internalHealthTicks >= healthTicks)
		{
			internalHealthTicks = 0;
			creature->changeHealth(healthGain);
		}

		if(internalManaTicks >= manaTicks)
		{
			internalManaTicks = 0;
			creature->changeMana(manaGain);
		}
	}

	return ConditionGeneric::executeCondition(creature, interval);
}

 

Não esqueça de compilar novamente.

Te ajudei? Clique em  Gostei ! 

²²²d¬¬b²²²

 

 

"She's got a smile that it seems to me...."  ♪♪

Link para o post
Compartilhar em outros sites
6 minutos atrás, luangop disse:

 

Só essa parte:


bool ConditionRegeneration::executeCondition(Creature* creature, int32_t interval)
{
    internalHealthTicks += interval;
    internalManaTicks += interval;
    if(internalHealthTicks >= healthTicks)
    {
        internalHealthTicks = 0;
        creature->changeHealth(healthGain);
    }

    if(internalManaTicks >= manaTicks)
    {
        internalManaTicks = 0;
        creature->changeMana(manaGain);
    }

    return ConditionGeneric::executeCondition(creature, interval);
}

 

Muda para isso:
 


bool ConditionRegeneration::executeCondition(Creature* creature, int32_t interval)
{
	internalHealthTicks += interval;
	internalManaTicks += interval;
	if(creature->getZone() != ZONE_PROTECTION)
	{
		if(internalHealthTicks >= healthTicks)
		{
			internalHealthTicks = 0;
			creature->changeHealth(healthGain);
		}

		if(internalManaTicks >= manaTicks)
		{
			internalManaTicks = 0;
			creature->changeMana(manaGain);
		}
	}

	return ConditionGeneric::executeCondition(creature, interval);
}

 

Não esqueça de compilar novamente.

Funcionou!!!! Muito obrigado, amigo!!! Vc sabe se o sistema de parcel também é na source? não consigo fazer funcionar de jeito nenhum

Link para o post
Compartilhar em outros sites

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

  • Conteúdo Similar

    • Por braianlomas
      Como faço para corrigir esse problema para meu cliente, eu uso o tfs 0.3.6  
      Quero resolver esse problema que tenho no meu cliente, como e onde posso resolver?  
      Eu uso o tfs 0.3.6, não tenho as fontes do cliente, se você puder me dar eu vou amá-las para sempre  
       

       
    • Por A.Mokk
      Ola pessoal, estou tentando compilar o TFS 1.5 Downgrade para 8.60 atraves do MSVC 2022, ao tentar compilar da o seguinte erro:
       
       
      Fiz o download do MSVC, GitDash, TFS-SDK-3.2, e de varios boosts que tentei, ao fazer o seguinte procedimento no GitDash:
       
      Ao chegar em ./bootstrap-vcpkg.bat o GitDash nao consegue realizar o procedimento corretamente, alguem poderia me ajudar ?

      Tentei de diversas formas mas o mesmo erro sempre persiste, atualmente meu servidor utiliza TFS 0.4, consigo compilar sem nenhum problema no MSVC 2010, porem, as limitações do TFS 0.4 estão me fazendo precisar atualizar, se alguem souber como corrigir esses erros eu agradeço !

      Tutoriais utilizados :
      Compiling on Windows (vcpkg) · otland/forgottenserver Wiki · GitHub
      Compiling on Windows · otland/forgottenserver Wiki · GitHub
      Compilando TFS 1.3 com vídeo-aula - Tutoriais Infraestrutura & Proteção - Tibia King - Tudo sobre Tibia, OTServ e Bots!
      Compilar TFS 1.3 Vcpkg - Tutoriais Infraestrutura & Proteção - Tibia King - Tudo sobre Tibia, OTServ e Bots!
       
      O que acontece no Powershell:
       
    • Por thunmin
      .Qual servidor ou website você utiliza como base? 
      Canary 2.3.6
      Qual o motivo deste tópico? 
      Queria fazer com que os players não pudessem mexer no aleta sio, pois, agora os mesmos estão conseguindo mexer nos itens
      Está surgindo algum erro? Se sim coloque-o aqui. 
       
      Você tem o código disponível? Se tiver publique-o aqui: 
         
      Você tem alguma imagem que possa auxiliar no problema? Se sim, coloque-a aqui. 
       
    • Por thunmin
      .Qual servidor ou website você utiliza como base? 
      canary para o cliente 13.16
      Qual o motivo deste tópico? 
      Não consigo encontrar onde ajusta
      to com o problema no 13.16  o exausted, por exemplo os kinas era pra combar exori, erori gran e exori min, porém não ta indo ta dando exausted o char ta soltando magia ou runa e não consegue usar as potions
      Está surgindo algum erro? Se sim coloque-o aqui. 
       
      Você tem o código disponível? Se tiver publique-o aqui: 
         
      Você tem alguma imagem que possa auxiliar no problema? Se sim, coloque-a aqui. 
       
    • Por Andersontatuador
      Olá galera da TK, me chamo Anderson estou procurando alguém profissional em otservs e site.
      Já tenho um servidor o site e o cliente preciso só de uma pessoal competente, que esteja empenhado a trabalhar,
      não quero nada de graça, pois nessa onda fui mais roubado do quer eu pagar um profissional.
      caso alguém se interesse entrar em contato comigo através do whatsapp
      82 9 9304-9462
       
      Está surgindo algum erro? Se sim coloque-o aqui. 
       
      Você tem o código disponível? Se tiver publique-o aqui: 
         
      Você tem alguma imagem que possa auxiliar no problema? Se sim, coloque-a aqui. 
       
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo