Salut,
Voilà un exemple complet de ce que tu veux faire.
Ajout du NPC dans creature_template avec liaison à SmartAI
Je te laisse le modifier à ta convenance.
[code=sql]
REPLACE INTO `creature_template` (`entry`, `difficulty_entry_1`, `difficulty_entry_2`, `difficulty_entry_3`, `KillCredit1`, `KillCredit2`, `modelid1`, `modelid2`, `modelid3`, `modelid4`, `name`, `subname`, `IconName`, `gossip_menu_id`, `minlevel`, `maxlevel`, `exp`, `faction_A`, `faction_H`, `npcflag`, `speed_walk`, `speed_run`, `scale`, `rank`, `mindmg`, `maxdmg`, `dmgschool`, `attackpower`, `dmg_multiplier`, `baseattacktime`, `rangeattacktime`, `unit_class`, `unit_flags`, `dynamicflags`, `family`, `trainer_type`, `trainer_spell`, `trainer_class`, `trainer_race`, `minrangedmg`, `maxrangedmg`, `rangedattackpower`, `type`, `type_flags`, `lootid`, `pickpocketloot`, `skinloot`, `resistance1`, `resistance2`, `resistance3`, `resistance4`, `resistance5`, `resistance6`, `spell1`, `spell2`, `spell3`, `spell4`, `spell5`, `spell6`, `spell7`, `spell8`, `PetSpellDataId`, `VehicleId`, `mingold`, `maxgold`, `AIName`, `MovementType`, `InhabitType`, `Health_mod`, `Mana_mod`, `Armor_mod`, `RacialLeader`, `questItem1`, `questItem2`, `questItem3`, `questItem4`, `questItem5`, `questItem6`, `movementId`, `RegenHealth`, `equipment_id`, `mechanic_immune_mask`, `flags_extra`, `ScriptName`, `WDBVerified`) VALUES (5000009, 0, 0, 0, 0, 0, 26375, 0, 0, 0, 'PNJ qui parle', '', '', 0, 75, 75, 2, 35, 35, 3, 1, 1.14286, 1, 5, 342, 485, 0, 392, 1, 2000, 0, 1, 32768, 2, 0, 0, 0, 0, 0, 295, 438, 68, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'SmartAI', 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 361, 0, 0, '', 12340);
[/code]
Le code SmartAI.
Il va aller chercher dans la table creature_text le texte à dire, crier, etc.
Il va le dire la prmière fois au spawn (100ms après le spawn), puis il va répeter ce texte entre 4m30 (270000ms) et 5m30 (330000 ms):
[code=sql]
DELETE FROM `smart_scripts` WHERE (`entryorguid`=5000009 AND `source_type`=0);
INSERT INTO `smart_scripts` (`entryorguid`, `source_type`, `id`, `link`, `event_type`, `event_phase_mask`, `event_chance`, `event_flags`, `event_param1`, `event_param2`, `event_param3`, `event_param4`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES
(5000009, 0, 1, 0, 60, 0, 100, 0, 100, 100, 270000, 330000, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, '');
[/code]
Ensuite on va ajouter dans la DB le ou les textes à faire dire au NPC, dans cet exemple juste un texte:
[code=sql]
INSERT INTO `creature_text` (`entry`, `groupid`, `id`, `text`, `type`, `language`, `probability`, `emote`, `duration`, `sound`, `comment`)
VALUES (5000009, 1, 0, 'Bonjour, je suis un pnj qui sait parler tout seul !', 1, 0, 100, 0, 0, 0, 'Text 1');
[/code]
J'ai volontairement laissé les ID pour que tu comprennes les liens entre la table creature_template et SmartAI.
Hellstorm