PDA

View Full Version : [MaNGOS] [C++] Talent Point Stone



CthulhuFtagn
23-01-10, 01:06 AM
This custom item will reset your talents and give you 71, it can be edited to allow more or less Talent Points.

Just edit this line:

pPlayer->SetFreeTalentPoints(71);How to Compile into ScriptDev2:
Open ScriptDev2 and in solution explorer go down to scripts > custom

http://wowdesktops.no-ip.org/img/sd21.jpg

Right-Click and Add > New Item...

http://wowdesktops.no-ip.org/img/sd22.jpg

Choose C++ File (cpp) which is the default and name it item_talent_stone.cpp


#include "precompiled.h"

bool ItemUse_item_custom_stone(Player* pPlayer, Item* pItem, const SpellCastTargets &pTargets)
{
if ( (pPlayer->isInCombat()) || (pPlayer->isInFlight()) || (pPlayer->isDead()))
{
pPlayer->SendEquipError(EQUIP_ERR_NOT_IN_COMBAT,pItem,NULL );
return false;
}
pPlayer->RemoveSpellsCausingAura(SPELL_AURA_MOUNTED);
{
pPlayer->SetFreeTalentPoints(0);
pPlayer->resetTalents(true);
pPlayer->SetFreeTalentPoints(71);
pPlayer->SendTalentsInfoData(false);
pPlayer->DestroyItemCount(pItem->GetEntry(),1,true);
return true;
}
}
void AddSC_item_custom_stone()
{
Script *newscript;

newscript = new Script;
newscript->Name="item_custom_stone";
newscript->pItemUse = &ItemUse_item_custom_stone;
newscript->RegisterSelf();
}Copy and Past the preceding code into this new file. Then click save.

http://wowdesktops.no-ip.org/img/sd23.jpg

Then go to system > ScriptLoader.cpp and insert

extern void AddSC_item_custom_stone();under the first

// customhttp://wowdesktops.no-ip.org/img/sd24.jpg

Collapse the - at the top of the script so that you see the following in the ScriptLoader.cpp window:

http://wowdesktops.no-ip.org/img/sd25.jpg

Now place the code

AddSC_item_custom_stone();Under the second set of

// customhttp://wowdesktops.no-ip.org/img/sd26.jpg

And save. Now you are ready to compile!

SQL for a Talent Point Stone

INSERT INTO `item_template` (`entry`, `class`, `subclass`, `unk0`, `name`, `displayid`, `Quality`, `Flags`, `Faction`, `BuyCount`, `BuyPrice`, `SellPrice`, `InventoryType`, `AllowableClass`, `AllowableRace`, `ItemLevel`, `RequiredLevel`, `RequiredSkill`, `RequiredSkillRank`, `requiredspell`, `requiredhonorrank`, `RequiredCityRank`, `RequiredReputationFaction`, `RequiredReputationRank`, `maxcount`, `stackable`, `ContainerSlots`, `StatsCount`, `stat_type1`, `stat_value1`, `stat_type2`, `stat_value2`, `stat_type3`, `stat_value3`, `stat_type4`, `stat_value4`, `stat_type5`, `stat_value5`, `stat_type6`, `stat_value6`, `stat_type7`, `stat_value7`, `stat_type8`, `stat_value8`, `stat_type9`, `stat_value9`, `stat_type10`, `stat_value10`, `ScalingStatDistribution`, `ScalingStatValue`, `dmg_min1`, `dmg_max1`, `dmg_type1`, `dmg_min2`, `dmg_max2`, `dmg_type2`, `armor`, `holy_res`, `fire_res`, `nature_res`, `frost_res`, `shadow_res`, `arcane_res`, `delay`, `ammo_type`, `RangedModRange`, `spellid_1`, `spelltrigger_1`, `spellcharges_1`, `spellppmRate_1`, `spellcooldown_1`, `spellcategory_1`, `spellcategorycooldown_1`, `spellid_2`, `spelltrigger_2`, `spellcharges_2`, `spellppmRate_2`, `spellcooldown_2`, `spellcategory_2`, `spellcategorycooldown_2`, `spellid_3`, `spelltrigger_3`, `spellcharges_3`, `spellppmRate_3`, `spellcooldown_3`, `spellcategory_3`, `spellcategorycooldown_3`, `spellid_4`, `spelltrigger_4`, `spellcharges_4`, `spellppmRate_4`, `spellcooldown_4`, `spellcategory_4`, `spellcategorycooldown_4`, `spellid_5`, `spelltrigger_5`, `spellcharges_5`, `spellppmRate_5`, `spellcooldown_5`, `spellcategory_5`, `spellcategorycooldown_5`, `bonding`, `description`, `PageText`, `LanguageID`, `PageMaterial`, `startquest`, `lockid`, `Material`, `sheath`, `RandomProperty`, `RandomSuffix`, `block`, `itemset`, `MaxDurability`, `area`, `Map`, `BagFamily`, `TotemCategory`, `socketColor_1`, `socketContent_1`, `socketColor_2`, `socketContent_2`, `socketColor_3`, `socketContent_3`, `socketBonus`, `GemProperties`, `RequiredDisenchantSkill`, `ArmorDamageModifier`, `Duration`, `ItemLimitCategory`, `HolidayId`, `ScriptName`, `DisenchantID`, `FoodType`, `minMoneyLoot`, `maxMoneyLoot`) VALUES (7, 15, 0, -1, 'Talent Point Stone', 12735, 1, 0, 0, 1, 0, 0, 0, 32, -1, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18282, 0, -1, -1, 1000, 0, -1, 0, 0, 0, 0, -1, 0, -1, 0, 0, 0, 0, -1, 0, -1, 0, 0, 0, 0, -1, 0, -1, 0, 0, 0, 0, -1, 0, -1, 1, 'Gives you 71 Talent points.', 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, 0, 0, 0, 0, 'item_custom_stone', 0, 0, 0, 0);Add in-game

.npc add 7

Sorena
27-01-10, 04:54 PM
Nice job bro.ur doing great!:D

Flake
28-01-10, 09:38 PM
how about a way to have a chat comand to reset your talents and give you your required talent points?

CthulhuFtagn
29-01-10, 02:42 AM
.reset talents


.mod tp 71

Playboy
11-09-10, 01:56 PM
hello, nice but:
when u script an item u cannot set its Faction, as its an item (at least in my DB), so Faction column in Item:template table just doesnt exist, so it seems u need to delete it and delete its value.
and
to test the item in game, u cant write .npc add, bcoz its an item so u have to write .additem [itemID]
however the guide is rly cool and i consider it an example for others, and these errors (IF those i find are errors, maybe just my DB is different) are not important, so GREAT JOB, hope u will continue taht way

The player boy

CthulhuFtagn
11-09-10, 02:10 PM
Is there a reason you are ressurecting a topic from January?

Bing
11-09-10, 02:31 PM
Indeed, you've been infracted. I've made a warning about this in the past for people to stop.