forked from tdauth/dmdf
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathTriggerData.txt
1312 lines (974 loc) · 41.4 KB
/
TriggerData.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
//***************************************************************************
[TriggerCategories]
// Defines categories for organizing trigger functions
// Key: Arbitrary category identifier
// Value 0: Display text
// Value 1: Icon image file
// Value 2: Optional flag (defaults to 0) indicating to disable display of category name
//
TC_TPOF_CORE="Core",ReplaceableTextures\WorldEditUI\Actions-Nothing
TC_TPOF_Environment="Environment",ReplaceableTextures\WorldEditUI\Actions-Environment
TC_TPOF_CHARACTER="Character",ReplaceableTextures\WorldEditUI\Actions-Hero
TC_TPOF_GAME="Game",ReplaceableTextures\WorldEditUI\Actions-Game
TC_TPOF_MAP="Map",ReplaceableTextures\WorldEditUI\Actions-Game
TC_TPOF_ENVIRONMENT="Environment",ReplaceableTextures\WorldEditUI\Actions-Environment
TC_TPOF_TALK="Talk",ReplaceableTextures\WorldEditUI\Actions-Dialog
TC_TPOF_FELLOW="Fellow",ReplaceableTextures\WorldEditUI\Actions-AI
TC_TPOF_ITEM="Item",ReplaceableTextures\WorldEditUI\Actions-Item
TC_TPOF_QUESTAREA="Quest Area",ReplaceableTextures\WorldEditUI\Actions-Quest
TC_TPOF_QUEST="Quest",ReplaceableTextures\WorldEditUI\Actions-Quest
TC_TPOF_SHRINE="Revival Shrine",ReplaceableTextures\WorldEditUI\Actions-Goldmine
TC_TPOF_SPAWNPOINT="Spawn Point",ReplaceableTextures\WorldEditUI\Actions-Unit
TC_TPOF_DUNGEON="Dungeon",ReplaceableTextures\WorldEditUI\Actions-Visibility
TC_TPOF_ROUTINE="Routine",ReplaceableTextures\WorldEditUI\Actions-Environment
TC_TPOF_VIDEO="Video",ReplaceableTextures\WorldEditUI\Actions-Camera
TC_TPOF_SHOP="Shop",ReplaceableTextures\WorldEditUI\Actions-Goldmine
//%%% DEBUG - Remove for retail
//TC_OBSOLETE=WESTRING_TRIGCAT_OBSOLETE,ReplaceableTextures\WorldEditUI\Editor-TriggerFunction
//TC_DEBUG=WESTRING_TRIGCAT_DEBUG,ReplaceableTextures\WorldEditUI\Editor-TriggerFunction
//***************************************************************************
[TriggerTypes]
// Defines all trigger variable types to be used by the Script Editor
// Key: type name
// Value 0: first game version in which this type is valid
// Value 1: flag (0 or 1) indicating if this type can be a global variable
// Value 2: flag (0 or 1) indicating if this type can be used with comparison operators
// Value 3: string to display in the editor
// Value 4: base type, used only for custom types
// Value 5: import type, for strings which represent files (optional)
// Value 6: flag (0 or 1) indicating to treat this type as the base type in the editor
// Trigger Variable Types
// These are sorted so that they appear as such in the Variables dialog.
// Core API
AIntegerVector=0,1,1,"Integer Vector",integer
AIntegerList=0,1,1,"Integer List",integer
AGroup=0,1,1,"Unit Group",integer
AFormat=0,1,1,"String Format",integer
// Environment API
ADynamicLightning=0,1,1,"Dynamic Lightning",integer
AMissile=0,1,1,"Missile",integer
Character=0,1,1,"Player Character",integer
AClass=0,1,1,"Character Class",integer
AUnitInventory=0,1,1,"Character Inventory",integer
Talk=0,1,1,"Talk",integer
Fellow=0,1,1,"Fellow",integer
AInfo=0,1,1,"Talk Info",integer
AInfoCondition=0,1,1,"Info Condition",integer
AInfoAction=0,1,1,"Info Action",integer
ATalkStartAction=0,1,1,"Talk Start Action",integer
ItemType=0,1,1,"Item Type",integer
EquipmentType=0,1,1,"Equipment Type",integer
QuestArea=0,1,1,"Quest Area",integer
AQuest=0,1,1,"Character Quest",integer
SharedQuest=0,1,1,"Shared Quest",integer
AQuestItem=0,1,1,"Quest Item",integer
QuestState=0,1,1,"Quest State",integer
QuestReward=0,1,1,"Quest Reward",integer
Shrine=0,1,1,"Revival Shrine",integer
SpawnPoint=0,1,1,"Creep Spawn Point",integer
ItemSpawnPoint=0,1,1,"Item Spawn Point",integer
Dungeon=0,1,1,"Dungeon",integer
Zone=0,1,1,"Zone",integer
ARoutine=0,1,1,"Routine",integer
AUnitRoutine=0,1,1,"Unit Routine",integer
NpcTalksRoutine=0,1,1,"Routine Talks",integer
NpcRoutineWithFacing=0,1,1,"Routine With Facing",integer
// Video API
AVideo=0,1,1,"Video Sequence",integer
actor=0,1,1,"Video Actor",integer
//***************************************************************************
[TriggerTypeDefaults]
// Defines an optional default value for a trigger type used as a global variable
// Key: variable type
// Value 0: script text
// Value 1: display text (if not present, script text will be used)
//
// If a type does not have an entry here, it will be set to null if it is a handle
//
// Core API
AIntegerVector=0,"No Integer Vector"
AIntegerList=0,"No Integer List"
AGroup=0,"No Unit Group"
// Environment API
ADynamicLightning=0,"No Dynamic Lightning"
Character=0,"No Character"
Talk=0,"No Talk"
Fellow=0,"No Fellow"
AQuest=0,"No Quest"
QuestArea=0,"No Quest Area"
Shrine=0,"No Revival Shrine"
SpawnPoint=0,"No Creep Spawn Point"
ItemSpawnPoint=0,"No Item Spawn Point"
Dungeon=0,"No Dungeon"
Zone=0,"No Zone"
//***************************************************************************
[TriggerParams]
// Defines possible values for variable types
// Key: arbitrary text
// Value 0: first game version in which this parameter is valid
// Value 1: variable type
// Value 2: code text (used in script)
// Value 3: display text
//
// Note: If the code text is a literal string, surround it with backward single quotes (`),
// and they will be converted to double quotes in the script.
//
AIntegerVectorNull=0,AIntegerVector,0,"No Integer Vector"
AIntegerListNull=0,AIntegerList,0,"No Integer List"
AGroupNull=0,AGroup,0,"No Unit Group"
CharacterNull=0,Character,0,"No Character"
TalkNull=0,Talk,0,"No Talk"
FellowNull=0,Fellow,0,"No Fellow"
QuestNull=0,AQuest,0,"No Quest"
QuestAreaNull=0,QuestArea,0,"No Quest Area"
ShrineNull=0,Shrine,0,"No Revival Shrine"
SpawnPoinNullt=0,SpawnPoint,0,"No Creep Spawn Point"
ItemSpawnPointNull=0,ItemSpawnPoint,0,"No Item Spawn Point"
DungeonNull=0,Dungeon,"No Dungeon"
ZoneNull=0,Zone,"No Zone"
EquipmentTypeNone=0,integer,AItemType.equipmentTypeNone,"Equipment Type None"
EquipmentTypeHeaddress=0,integer,AItemType.equipmentTypeHeaddress,"Equipment Type Headdress"
EquipmentTypeArmour=0,integer,AItemType.equipmentTypeArmour,"Equipment Type Armour"
EquipmentTypePrimaryWeapon=0,integer,AItemType.equipmentTypePrimaryWeapon,"Equipment Type Primary Weapon"
EquipmentTypeSecondaryWeapon=0,integer,AItemType.equipmentTypeSecondaryWeapon,"Equipment Type Secondary Weapon"
EquipmentTypeAmulet=0,integer,AItemType.equipmentTypeAmulet,"Equipment Type Amulet"
EquipmentTypeAmulet2=0,integer,5,"Equipment Type Amulet 2"
QuestStateNotUsed=0,QuestState,AAbstractQuest.stateNotUsed,"State Not Used"
QuestStateNew=0,QuestState,AAbstractQuest.stateNew,"State New"
QuestStateCompleted=0,QuestState,AAbstractQuest.stateCompleted,"State Completed"
QuestStateFailed=0,QuestState,AAbstractQuest.stateFailed,"State Failed"
QuestRewardLevel=0,QuestReward,AAbstractQuest.rewardLevel,"Reward Level"
QuestRewardSkillPoints=0,QuestReward,AAbstractQuest.rewardSkillPoints,"Reward Skill Points"
QuestRewardExperience=0,QuestReward,AAbstractQuest.rewardExperience,"Reward Experience"
QuestRewardStrength=0,QuestReward,AAbstractQuest.rewardStrength,"Reward Strength"
QuestRewardAgility=0,QuestReward,AAbstractQuest.rewardAgility,"Reward Agility"
QuestRewardIntelligence=0,QuestReward,AAbstractQuest.rewardIntelligence,"Reward Intelligence"
QuestRewardGold=0,QuestReward,AAbstractQuest.rewardGold,"Reward Gold"
QuestRewardLumber=0,QuestReward,AAbstractQuest.rewardLumber,"Reward Lumber"
ClassCleric=0,AClass,Classes.cleric(),"Class Cleric"
ClassNecromancer=0,AClass,Classes.necromancer(),"Class Necromancer"
ClassDruid=0,AClass,Classes.druid(),"Class Druid"
ClassKnight=0,AClass,Classes.knight(),"Class Knight"
ClassDragonSlayer=0,AClass,Classes.dragonSlayer(),"Class Dragon Slayer"
ClassRanger=0,AClass,Classes.ranger(),"Class Ranger"
ClassElementalMage=0,AClass,Classes.elementalMage(),"Class Elemental Mage"
ClassWizard=0,AClass,Classes.wizard(),"Class Wizard"
ZoneTalras=0,string,`TL`,"Zone Talras"
ZoneGardonar=0,string,`GA`,"Zone Gardonar"
ZoneGardonarsHell=0,string,`GH`,"Zone Gardonar's Hell"
ZoneDeranorsSwamp=0,string,`DS`,"Zone Deranor's Swamp"
ZoneHolzbruck=0,string,`HB`,"Zone Holzbruck"
ZoneHolzbrucksUnderworld=0,string,`HU`,"Zone Holzbruck's Underworld"
ZoneWorldMap=0,string,`WM`,"Zone Worldmap"
ZoneDornheim=0,string,`DH`,"Zone Dornheim"
ZoneTheNorth=0,string,`TN`,"Zone The North"
RoutineMoveTo=0,ARoutine,Routines.moveTo(),"Routine Move To"
RoutineHarvest=0,ARoutine,Routines.harvest(),"Routine Harvest"
RoutineHarvestLumber=0,ARoutine,Routines.harvestLumber(),"Routine Harvest Lumber"
RoutineTrain=0,ARoutine,Routines.train(),"Routine Train"
//***************************************************************************
[TriggerEvents]
// Defines events available in the editor
// Key: script event function
// Value 0: first game version in which this function is valid
// Value 1+: argument types
// Note that the first argument is always a `trigger`, and is excluded here
// Map API
TriggerRegisterMapInitSettingsEvent=1
_TriggerRegisterMapInitSettingsEvent_Defaults=
_TriggerRegisterMapInitSettingsEvent_Category=TC_TPOF_MAP
TriggerRegisterMapInitEvent=1
_TriggerRegisterMapInitEvent_Defaults=
_TriggerRegisterMapInitEvent_Category=TC_TPOF_MAP
TriggerRegisterMapOnCreateClassSelectionItemsEvent=1
_TriggerRegisterMapOnCreateClassSelectionItemsEvent_Defaults=
_TriggerRegisterMapOnCreateClassSelectionItemsEvent_Category=TC_TPOF_MAP
TriggerRegisterMapOnCreateClassItemsEvent=1
_TriggerRegisterMapOnCreateClassItemsEvent_Defaults=
_TriggerRegisterMapOnCreateClassItemsEvent_Category=TC_TPOF_MAP
TriggerRegisterMapStartEvent=1
_TriggerRegisterMapStartEvent_Defaults=
_TriggerRegisterMapStartEvent_Category=TC_TPOF_MAP
TriggerRegisterMapOnSelectClassEvent=1
_TriggerRegisterMapOnSelectClassEvent_Defaults=
_TriggerRegisterMapOnSelectClassEvent_Category=TC_TPOF_MAP
TriggerRegisterMapOnRepickCharacterEvent=1
_TriggerRegisterMapOnRepickCharacterEvent_Defaults=
_TriggerRegisterMapOnRepickCharacterEvent_Category=TC_TPOF_MAP
TriggerRegisterMapOnRestoreCharacterEvent=1
_TriggerRegisterMapOnRestoreCharacterEvent_Defaults=
_TriggerRegisterMapOnRestoreCharacterEvent_Category=TC_TPOF_MAP
TriggerRegisterMapOnRestoreCharactersEvent=1
_TriggerRegisterMapOnRestoreCharactersEvent_Defaults=
_TriggerRegisterMapOnRestoreCharactersEvent_Category=TC_TPOF_MAP
TriggerRegisterMapOnInitVideoSettingsEvent=1
_TriggerRegisterMapOnInitVideoSettingsEvent_Defaults=
_TriggerRegisterMapOnInitVideoSettingsEvent_Category=TC_TPOF_MAP
TriggerRegisterMapOnResetVideoSettingsEvent=1
_TriggerRegisterMapOnResetVideoSettingsEvent_Defaults=
_TriggerRegisterMapOnResetVideoSettingsEvent_Category=TC_TPOF_MAP
TriggerRegisterCharacterOnEquipItemEvent=1
_TriggerRegisterCharacterOnEquipItemEvent_Defaults=
_TriggerRegisterCharacterOnEquipItemEvent_Category=TC_TPOF_CHARACTER
TriggerRegisterCharacterOnAddItemToRucksackEvent=1
_TriggerRegisterCharacterOnAddItemToRucksackEvent_Defaults=
_TriggerRegisterCharacterOnAddItemToRucksackEvent_Category=TC_TPOF_CHARACTER
// Game API
TriggerRegisterOnDamageAnyUnit=1
_TriggerRegisterOnDamageAnyUnit_Defaults=
_TriggerRegisterOnDamageAnyUnit_Category=TC_TPOF_GAME
//***************************************************************************
[TriggerConditions]
// Defines boolean condition functions
// Key: condition function name
// Value 0: first game version in which this function is valid
// Value 1+: argument types
OperatorCompareCharacter=1,Character,ComparisonOperator,Character
_OperatorCompareCharacter_Defaults=_,OperatorEqual,_
_OperatorCompareCharacter_Category=TC_CONDITION
OperatorCompareClass=1,AClass,ComparisonOperator,AClass
_OperatorCompareClass_Defaults=ClassCleric,OperatorEqual,ClassCleric
_OperatorCompareClass_Category=TC_CONDITION
OperatorCompareQuest=1,AQuest,ComparisonOperator,AQuest
_OperatorCompareQuest_Defaults=QuestNull,OperatorEqual,QuestNull
_OperatorCompareQuest_Category=TC_CONDITION
OperatorCompareQuestState=1,QuestState,ComparisonOperator,QuestState
_OperatorCompareQuestState_Defaults=QuestStateNew,OperatorEqual,QuestStateNew
_OperatorCompareQuestState_Category=TC_CONDITION
//***************************************************************************
[TriggerActions]
// Defines action functions
// Key: action function name
// Value 0: first game version in which this function is valid
// Value 1+: argument types
// Core API
AddIntegerVectorElementToBack=1,AIntegerVector,integer
_AddIntegerVectorElementToBack_Defaults=
_AddIntegerVectorElementToBack_Category=TC_TPOF_CORE
RemoveIntegerVectorElementFromBack=1,AIntegerVector
_RemoveIntegerVectorElementFromBack_Defaults=
_RemoveIntegerVectorElementFromBack_Category=TC_TPOF_CORE
ClearIntegerVector=1,AIntegerVector
_ClearIntegerVector_Defaults=
_ClearIntegerVector_Category=TC_TPOF_CORE
DestroyIntegerVector=1,AIntegerVector
_DestroyIntegerVector_Defaults=
_DestroyIntegerVector_Category=TC_TPOF_CORE
DestroyUnitGroup=1,AGroup
_DestroyUnitGroup_Defaults=
_DestroyUnitGroup_Category=TC_TPOF_CORE
UnitGroupAddUnit=1,AGroup,unit
_UnitGroupAddUnit_Defaults=
_UnitGroupAddUnit_Category=TC_TPOF_CORE
SetDmdfHashTableHandleInteger=1,handle,integer,integer
_SetDmdfHashTableHandleInteger_Defaults=
_SetDmdfHashTableHandleInteger_Category=TC_TPOF_CORE
SetUnitPositionRect=1,unit,rect
_SetUnitPositionRect_Defaults=
_SetUnitPositionRect_Category=TC_TPOF_CORE
SetUnitFacing=1,unit,real
_SetUnitFacing_Defaults=_,90.0
_SetUnitFacing_Category=TC_TPOF_CORE
SetUnitFacingToFaceUnit=1,unit,unit
_SetUnitFacingToFaceUnit_Defaults=
_SetUnitFacingToFaceUnit_Category=TC_TPOF_CORE
IssueRectOrder=1,unit,unitorderutarg,rect
_IssueRectOrder_Defaults=_,UnitOrderMove,_
_IssueRectOrder_Category=TC_TPOF_CORE
// Environment API
DestroyDynamicLightning=1,ADynamicLightning
_DestroyDynamicLightning_Defaults=
_DestroyDynamicLightning_Category=TC_TPOF_ENVIRONMENT
DestroyMissile=1,AMissile
_DestroyMissile_Defaults=
_DestroyMissile_Category=TC_TPOF_ENVIRONMENT
MissileStart=1,AMissile,real,real,real
_MissileStart_Defaults=
_MissileStart_Category=TC_TPOF_ENVIRONMENT
MissileSetTargetX=1,AMissile,real
_MissileSetTargetX_Defaults=
_MissileSetTargetX_Category=TC_TPOF_ENVIRONMENT
MissileSetTargetY=1,AMissile,real
_MissileSetTargetY_Defaults=
_MissileSetTargetY_Category=TC_TPOF_ENVIRONMENT
MissileSetTargetZ=1,AMissile,real
_MissileSetTargetZ_Defaults=
_MissileSetTargetZ_Category=TC_TPOF_ENVIRONMENT
MissileSetTargetWidget=1,AMissile,widget
_MissileSetTargetWidget_Defaults=
_MissileSetTargetWidget_Category=TC_TPOF_ENVIRONMENT
AddDoodadOcclusion=1,doodadcode
_AddDoodadOcclusion_Defaults=
_AddDoodadOcclusion_Category=TC_TPOF_ENVIRONMENT
// Camera API
CameraSetupApplyForceDuration=1,camerasetup,cameraapplyoption,real,
_CameraSetupApplyForceDuration_Defaults=_,CameraApply,0
_CameraSetupApplyForceDuration_Limits=_,_,_,_,0,_
_CameraSetupApplyForceDuration_Category=TC_CAMERA
// Character API
CharacterSetMovable=1,Character,boolean
_CharacterSetMovable_Defaults=PlayerCharacter,true
_CharacterSetMovable_Category=TC_TPOF_CHARACTER
CharacterSetAllMovable=1,boolean
_CharacterSetAllMovable_Defaults=true
_CharacterSetAllMovable_Category=TC_TPOF_CHARACTER
CharacterSelectSingle=1,Character,player
_CharacterSelectSingle_Defaults=PlayerCharacter,_
_CharacterSelectSingle_Category=TC_TPOF_CHARACTER
CharacterCraftItem=1,Character,itemcode
_CharacterCraftItem_Defaults=PlayerCharacter,_
_CharacterCraftItem_Category=TC_TPOF_CHARACTER
CharacterXPBonus=1,Character,integer,string
_CharacterXPBonus_Defaults=PlayerCharacter,50,_
_CharacterXPBonus_Category=TC_TPOF_CHARACTER
CharacterGiveItem=1,Character,itemcode
_CharacterGiveItem_Defaults=PlayerCharacter,_
_CharacterGiveItem_Category=TC_TPOF_CHARACTER
CharacterGiveQuestItem=1,Character,itemcode
_CharacterGiveQuestItem_Defaults=PlayerCharacter,_
_CharacterGiveQuestItem_Category=TC_TPOF_CHARACTER
CharacterDisplayItemAcquired=1,Character,string,string
_CharacterDisplayItemAcquired_Defaults=PlayerCharacter,GetItemName,_
_CharacterDisplayItemAcquired_Category=TC_TPOF_CHARACTER
// Game API
GameAddDefaultDoodadsOcclusion=1
_GameAddDefaultDoodadsOcclusion_Defaults=
_GameAddDefaultDoodadsOcclusion_Category=TC_TPOF_GAME
GameApplyHandicapToCreeps=1
_GameApplyHandicapToCreeps_Defaults=
_GameApplyHandicapToCreeps_Category=TC_TPOF_GAME
// Map API
SetMapSettingsMapName=1,string
_SetMapSettingsMapName_Defaults=ZoneTalras
_SetMapSettingsMapName_Category=TC_TPOF_MAP
SetMapSettingsAlliedPlayer=1,player
_SetMapSettingsAlliedPlayer_Defaults=Player06
_SetMapSettingsAlliedPlayer_Category=TC_TPOF_MAP
SetMapSettingsPlayerGivesXP=1,player,boolean
_SetMapSettingsPlayerGivesXP_Defaults=PlayerNA,true
_SetMapSettingsPlayerGivesXP_Category=TC_TPOF_MAP
SetMapSettingsGoldmine=1,unit
_SetMapSettingsGoldmine_Defaults=_
_SetMapSettingsGoldmine_Category=TC_TPOF_MAP
SetMapSettingsMusic=1,string
_SetMapSettingsMusic_Defaults=_
_SetMapSettingsMusic_Category=TC_TPOF_MAP
SetMapSettingsStartLevel=1,integer
_SetMapSettingsStartLevel_Defaults=1
_SetMapSettingsStartLevel_Category=TC_TPOF_MAP
SetMapSettingsStartSkillPoints=1,integer
_SetMapSettingsStartSkillPoints_Defaults=1
_SetMapSettingsStartSkillPoints_Category=TC_TPOF_MAP
AddMapSettingsZoneRestorePosition=1,string,player,real,real,real
_AddMapSettingsZoneRestorePosition_Defaults=ZoneTalras,Player01,_,_,_
_AddMapSettingsZoneRestorePosition_Category=TC_TPOF_MAP
AddMapSettingsZoneRestorePositionForAllPlayers=1,string,real,real,real
_AddMapSettingsZoneRestorePositionForAllPlayers_Defaults=ZoneTalras,_,_,_
_AddMapSettingsZoneRestorePositionForAllPlayers_Category=TC_TPOF_MAP
ChangeMap=1,string
_ChangeMap_Defaults=ZoneTalras
_ChangeMap_Category=TC_TPOF_MAP
SetZoneEnabled=1,Zone,boolean
_SetZoneEnabled_Defaults=_,true
_SetZoneEnabled_Category=TC_TPOF_MAP
// Talk API
SetInfoCondition=1,AInfo,AInfoCondition
_SetInfoCondition_Defaults=GetLastCreatedInfo,InfoConditionByTrigger
_SetInfoCondition_Category=TC_TPOF_TALK
SetInfoAction=1,AInfo,AInfoAction
_SetInfoAction_Defaults=GetLastCreatedInfo,InfoActionByTrigger
_SetInfoAction_Category=TC_TPOF_TALK
SetInfoConditionAndActionByTrigger=1,AInfo,trigger
_SetInfoConditionAndActionByTrigger_Defaults=GetLastCreatedInfo,_
_SetInfoConditionAndActionByTrigger_Category=TC_TPOF_TALK
SetTalkStartAction=1,Talk,ATalkStartAction
_SetTalkStartAction_Defaults=_,TalkStartActionByTrigger
_SetTalkStartAction_Category=TC_TPOF_TALK
ShowTalkStartPage=1,Talk,Character
_ShowTalkStartPage_Defaults=GetTriggerTalk,GetTriggerCharacter
_ShowTalkStartPage_Category=TC_TPOF_TALK
ShowTalkRange=1,Talk,integer,integer,Character
_ShowTalkRange_Defaults=GetTriggerTalk,_,_,GetTriggerCharacter
_ShowTalkRange_Category=TC_TPOF_TALK
ShowTalkUntil=1,Talk,integer,Character
_ShowTalkUntil_Defaults=GetTriggerTalk,_,GetTriggerCharacter
_ShowTalkUntil_Category=TC_TPOF_TALK
CloseTalk=1,Talk,Character
_CloseTalk_Defaults=GetTriggerTalk,GetTriggerCharacter
_CloseTalk_Category=TC_TPOF_TALK
AddInfo=1,Talk,boolean,boolean,string
_AddInfo_Defaults=GetLastCreatedTalk,true,false,_,_,_
_AddInfo_Category=TC_TPOF_TALK
AddExitButton=1,Talk
_AddExitButton_Defaults=GetLastCreatedTalk
_AddExitButton_Category=TC_TPOF_TALK
Speech=1,AInfo,Character,boolean,StringExt,sound
_Speech_Defaults=GetTriggerInfo,GetTriggerCharacter,false,_,SoundNull
_Speech_Category=TC_TPOF_TALK
// Quest Area API
CreateQuestArea=1,rect,boolean
_CreateQuestArea_Defaults=
_CreateQuestArea_Category=TC_TPOF_QUESTAREA
// Quest API
SetQuestAreaConditionAndActionByTrigger=1,QuestArea,trigger
_SetQuestAreaConditionAndActionByTrigger_Defaults=
_SetQuestAreaConditionAndActionByTrigger_Category=TC_TPOF_QUESTAREA
CreateCharacterQuestItem=1,AQuest,string
_CreateCharacterQuestItem_Defaults=GetLastCreatedCharacterQuest,_
_CreateCharacterQuestItem_Category=TC_TPOF_QUEST
SetCharacterQuestState=1,AQuest,QuestState
_SetCharacterQuestState_Defaults=_,QuestStateNew
_SetCharacterQuestState_Category=TC_TPOF_QUEST
SetCharacterQuestStateTrigger=1,AQuest,QuestState,trigger
_SetCharacterQuestStateTrigger_Defaults=_,QuestStateCompleted,_
_SetCharacterQuestStateTrigger_Category=TC_TPOF_QUEST
SetCharacterQuestDescription=1,AQuest,StringExt
_SetCharacterQuestDescription_Defaults=
_SetCharacterQuestDescription_Category=TC_TPOF_QUEST
SetCharacterQuestIconPath=1,AQuest,imagefile
_SetCharacterQuestIconPath_Defaults=
_SetCharacterQuestIconPath_Category=TC_TPOF_QUEST
SetCharacterQuestReward=1,AQuest,QuestReward,integer
_SetCharacterQuestReward_Defaults=_,QuestRewardGold,_
_SetCharacterQuestReward_Category=TC_TPOF_QUEST
DisplayCharacterQuestState=1,AQuest
_DisplayCharacterQuestState_Defaults=_
_DisplayCharacterQuestState_Category=TC_TPOF_QUEST
DisplayCharacterQuestUpdate=1,AQuest
_DisplayCharacterQuestUpdate_Defaults=_
_DisplayCharacterQuestUpdate_Category=TC_TPOF_QUEST
DisplayCharacterQuestUpdateMessage=1,AQuest,string
_DisplayCharacterQuestUpdateMessage_Defaults=_
_DisplayCharacterQuestUpdateMessage_Category=TC_TPOF_QUEST
SetQuestItemState=1,AQuestItem,QuestState
_SetQuestItemState_Defaults=_,QuestStateNew
_SetQuestItemState_Category=TC_TPOF_QUEST
SetQuestItemStateTrigger=1,AQuestItem,QuestState,trigger
_SetQuestItemStateTrigger_Defaults=_,QuestStateCompleted,_
_SetQuestItemStateTrigger_Category=TC_TPOF_QUEST
SetQuestItemReward=1,AQuestItem,QuestReward,integer
_SetQuestItemReward_Defaults=
_SetQuestItemReward_Category=TC_TPOF_QUEST
EnableQuestUntil=1,AQuest,integer
_EnableQuestUntil_Defaults=
_EnableQuestUntil_Category=TC_TPOF_QUEST
SetCharacterQuestPing=1,AQuest,boolean
_SetCharacterQuestPing_Defaults=_,true
_SetCharacterQuestPing_Category=TC_TPOF_QUEST
SetCharacterQuestPingCoordinatesFromRect=1,AQuest,rect
_SetCharacterQuestPingCoordinatesFromRect_Defaults=
_SetCharacterQuestPingCoordinatesFromRect_Category=TC_TPOF_QUEST
SetCharacterQuestPingUnit=1,AQuest,unit
_SetCharacterQuestPingUnit_Defaults=
_SetCharacterQuestPingUnit_Category=TC_TPOF_QUEST
SetCharacterQuestPingColour=1,AQuest,real,real,real
_SetCharacterQuestPingColour_Defaults=_,100.0,100.0,100.0
_SetCharacterQuestPingColour_Category=TC_TPOF_QUEST
CompleteCharacterQuest=1,AQuest
_CompleteCharacterQuest_Defaults=
_CompleteCharacterQuest_Category=TC_TPOF_QUEST
FailCharacterQuest=1,AQuest
_FailCharacterQuest_Defaults=
_FailCharacterQuest_Category=TC_TPOF_QUEST
SetSharedQuestState=1,SharedQuest,QuestState
_SetSharedQuestState_Defaults=
_SetSharedQuestState_Category=TC_TPOF_QUEST
// Fellow API
SetFellowRevival=1,Fellow,boolean
_SetFellowRevival_Defaults=_,true
_SetFellowRevival_Category=TC_TPOF_FELLOW
SetFellowRevivalTitle=1,Fellow,string
_SetFellowRevivalTitle_Defaults=GetLastCreatedFellow,_
_SetFellowRevivalTitle_Category=TC_TPOF_FELLOW
SetFellowRevivalMessage=1,Fellow,string
_SetFellowRevivalMessage_Defaults=GetLastCreatedFellow,_
_SetFellowRevivalMessage_Category=TC_TPOF_FELLOW
SetFellowRevivalSound=1,Fellow,sound
_SetFellowRevivalSound_Defaults=GetLastCreatedFellow,_
_SetFellowRevivalSound_Category=TC_TPOF_FELLOW
ShareFellowWithAll=1,Fellow
_ShareFellowWithAll_Defaults=
_ShareFellowWithAll_Category=TC_TPOF_FELLOW
ShareFellowWithCharacter=1,Fellow,Character
_ShareFellowWithCharacter_Defaults=
_ShareFellowWithCharacter_Category=TC_TPOF_FELLOW
ResetFellow=1,Fellow
_ResetFellow_Defaults=
_ResetFellow_Category=TC_TPOF_FELLOW
SetFellowDescription=1,Fellow,StringExt
_SetFellowDescription_Defaults=GetLastCreatedFellow,_
_SetFellowDescription_Category=TC_TPOF_FELLOW
SetFellowTalk=1,Fellow,boolean
_SetFellowTalk_Defaults=GetLastCreatedFellow,_
_SetFellowTalk_Category=TC_TPOF_FELLOW
FellowAddAbility=1,Fellow,abilcode
_FellowAddAbility_Defaults=GetLastCreatedFellow,_
_FellowAddAbility_Category=TC_TPOF_FELLOW
// Spawn Point API
CreateSpawnPoint=1
_CreateSpawnPoint_Defaults=
_CreateSpawnPoint_Category=TC_TPOF_SPAWNPOINT
SpawnPointAddUnitWithType=1,SpawnPoint,unit,real
_SpawnPointAddUnitWithType_Defaults=GetLastCreatedSpawnPoint,_,1.0
_SpawnPointAddUnitWithType_Category=TC_TPOF_SPAWNPOINT
SpawnPointAddNewItemType=1,SpawnPoint,integer,itemcode,real
_SpawnPointAddNewItemType_Defaults=GetLastCreatedSpawnPoint,GetLastAddedSpawnPointMemberIndex,_,1.0
_SpawnPointAddNewItemType_Category=TC_TPOF_SPAWNPOINT
_SpawnPointSpawnDeadOnlyAll=1
_SpawnPointSpawnDeadOnlyAll_Defaults=
__SpawnPointSpawnDeadOnlyAll_Category=TC_TPOF_SPAWNPOINT
CreateItemSpawnPointAtItemPos=1,item
_CreateItemSpawnPointAtItemPos_Defaults=
_CreateItemSpawnPointAtItemPos_Category=TC_TPOF_SPAWNPOINT
CreateItemSpawnPoint=1,real,real,item
_CreateItemSpawnPoint_Defaults=
_CreateItemSpawnPoint_Category=TC_TPOF_SPAWNPOINT
// Dungeon API
DungeonSetEnterTrigger=1,Dungeon,boolean
_DungeonSetEnterTrigger_Defaults=GetLastCreatedDungeon,true
_DungeonSetEnterTrigger_Category=TC_TPOF_DUNGEON
DungeonSetCameraSetup=1,Dungeon,camerasetup
_DungeonSetCameraSetup_Defaults=GetLastCreatedDungeon,_
_DungeonSetCameraSetup_Category=TC_TPOF_DUNGEON
// Routine API
CreateRoutineWithFacing=1,ARoutine,unit,real,real,rect
_CreateRoutineWithFacing_Defaults=RoutineMoveTo,_,12.0,20.0,_
_CreateRoutineWithFacing_Category=TC_TPOF_ROUTINE
CreateRoutineTalks=1,ARoutine,unit,real,real,rect
_CreateRotineTalks_Defaults=RoutineMoveTo,_,12.0,20.0,_
_CreateRoutineTalks_Category=TC_TPOF_ROUTINE
RoutineSetFacing=1,NpcRoutineWithFacing,real
_RoutineSetFacing_Defaults=GetLastCreatedRoutineWithFacing,90.0
_RoutineSetFacing_Category=TC_TPOF_ROUTINE
RoutineSetPartner=1,NpcTalksRoutine,unit
_RoutineSetPartner_Defaults=GetLastCreatedRoutineTalks,_
_RoutineSetPartner_Category=TC_TPOF_ROUTINE
RoutineAddSound=1,NpcTalksRoutine,string,sound
_RoutineAddSound_Defaults=GetLastCreatedRoutineTalks,_,SoundNull
_RoutineAddSound_Category=TC_TPOF_ROUTINE
RoutineAddSoundAnswer=1,NpcTalksRoutine,string,sound
_RoutineAddSoundAnswer_Defaults=GetLastCreatedRoutineTalks,_,SoundNull
_RoutineAddSoundAnswer_Category=TC_TPOF_ROUTINE
RoutineManualStart=1,unit
_RoutineManualStart_Defaults=
_RoutineManualStart_Category=TC_TPOF_ROUTINE
RoutineManualStartAll=1
_RoutineManualStartAll_Defaults=
_RoutineManualStartAll_Category=TC_TPOF_ROUTINE
// Shrine API
ShrineEnableForAll=1,Shrine,boolean
_ShrineEnableForAll_Defaults=_,true
_ShrineEnableForAll_Category=TC_TPOF_SHRINE
// Video API
VideoSetInitActionByTrigger=1,AVideo,trigger
_VideoSetInitActionByTrigger_Defaults=
_VideoSetInitActionByTrigger_Category=TC_TPOF_VIDEO
VideoSetPlayActionByTrigger=1,AVideo,trigger
_VideoSetPlayActionByTrigger_Defaults=
_VideoSetPlayActionByTrigger_Category=TC_TPOF_VIDEO
VideoSetStopActionByTrigger=1,AVideo,trigger
_VideoSetStopActionByTrigger_Defaults=
_VideoSetStopActionByTrigger_Category=TC_TPOF_VIDEO
VideoSetSkipActionByTrigger=1,AVideo,trigger
_VideoSetSkipActionByTrigger_Defaults=
_VideoSetSkipActionByTrigger_Category=TC_TPOF_VIDEO
VideoPlay=1,AVideo
_VideoPlay_Defaults=
_VideoPlay_Category=TC_TPOF_VIDEO
VideoStop=1,AVideo
_VideoStop_Defaults=
_VideoStop_Category=TC_TPOF_VIDEO
VideoInitVideoSettings=1,AVideo
_VideoInitVideoSettings_Defaults=
_VideoInitVideoSettings_Category=TC_TPOF_VIDEO
VideoResetVideoSettings=1
_VideoResetVideoSettings_Defaults=
_VideoResetVideoSettings_Category=TC_TPOF_VIDEO
VideoSetActorOwner=1,AVideo,player
_VideoSetActorOwner_Defaults=
_VideoSetActorOwner_Category=TC_TPOF_VIDEO
VideoFadeOutWithWait=1
_VideoFadeOutWithWait_Defaults=
_VideoFadeOutWithWait_Category=TC_TPOF_VIDEO
VideoFadeInWithWait=1
_VideoFadeInWithWait_Defaults=
_VideoFadeInWithWait_Category=TC_TPOF_VIDEO
VideoTransmissionFromUnit=1,unit,string,sound
_VideoTransmissionFromUnit_Defaults=
_VideoTransmissionFromUnit_Category=TC_TPOF_VIDEO
VideoTransmissionFromUnitType=1,unitcode,player,string,string,sound
_VideoTransmissionFromUnitType_Defaults=
_VideoTransmissionFromUnitType_Category=TC_TPOF_VIDEO
// Shop API
CreateShop=1,unit,unit
_CreateShop_Defaults=
_CreateShop_Category=TC_TPOF_SHOP
// Obsolete actions
//AddPerfLogLabel=0,string
//_AddPerfLogLabel_Defaults="Triggered Debug Label"
//_AddPerfLogLabel_Category=TC_OBSOLETE
//Cheat=0,string
//_Cheat_Defaults="warnings"
//_Cheat_Category=TC_OBSOLETE
//***************************************************************************
[TriggerCalls]
// Defines function calls which may be used as parameter values
// Key: Function name
// Value 0: first game version in which this function is valid
// Value 1: flag (0 or 1) indicating if the call can be used in events
// Value 2: return type
// Value 3+: argument types
//
// Note: Operators are specially handled by the editor
JASS=1,1,scriptcode,scriptcode
_JASS_Defaults=_
_JASS_Category=TC_TPOF_CORE
JASS2Integer=1,1,integer,scriptcode
_JASS2Integer_Defaults=_
_JASS2Integer_Category=TC_TPOF_CORE
JASS2Item=1,1,item,scriptcode
_JASS2Item_Defaults=_
_JASS2Item_Category=TC_TPOF_CORE
JASS2Unit=1,1,unit,scriptcode
_JASS2Unit_Defaults=_
_JASS2Unit_Category=TC_TPOF_CORE
// Int 2 struct conversion
I2Character=1,0,Character,integer
_I2Character_Defaults=GetIntegerVectorElement
_I2Character_Category=TC_TPOF_CORE
I2Class=1,0,AClass,integer
_I2Class_Defaults=GetIntegerVectorElement
_I2Class_Category=TC_TPOF_CORE
// Core API
GetLastCreatedIntegerVector=1,0,IntegerVector
_GetLastCreatedIntegerVector_Defaults=
_GetLastCreatedIntegerVector_Category=TC_TPOF_CORE
CreateIntegerVector=1,0,AIntegerVector
_CreateIntegerVector_Defaults=
_CreateIntegerVector_Category=TC_TPOF_CORE
GetIntegerVectorSize=1,0,integer,AIntegerVector
_GetIntegerVectorSizet_Defaults=
_GetIntegerVectorSize_Category=TC_TPOF_CORE
GetIntegerVectorElement=1,0,integer,AIntegerVector,integer
_GetIntegerVectorElement_Defaults=
_GetIntegerVectorElement_Category=TC_TPOF_CORE
CreateIntegerList=1,0,AIntegerList
_CreateIntegerList_Defaults=
_CreateIntegerList_Category=TC_TPOF_CORE
GetLastCreatedUnitGroup=1,0,AGroup
_GetLastCreatedUnitGroup_Defaults=
_GetLastCreatedUnitGroup_Category=TC_TPOF_CORE
CreateUnitGroup=1,0,AGroup
_CreateUnitGroup_Defaults=
_CreateUnitGroup_Category=TC_TPOF_CORE
UnitGroupGetSize=1,0,integer,AGroup
_UnitGroupGetSize_Defaults=
_UnitGroupGetSize_Category=TC_TPOF_CORE
UnitGroupGetUnit=1,0,unit,AGroup,integer
_UnitGroupGetUnit_Defaults=
_UnitGroupGetUnit_Category=TC_TPOF_CORE
FindString=1,0,integer,string,string
_FindString_Defaults=
_FindString_Category=TC_TPOF_CORE
Format=1,0,AFormat,string
_Format_Defaults=
_Format_Category=TC_TPOF_CORE
String=1,0,String,AFormat
_String_Defaults=
_String_Category=TC_TPOF_CORE
FormatInteger=1,0,AFormat,AFormat,integer
_FormatInteger_Defaults=
_FormatInteger_Category=TC_TPOF_CORE
ReplaceString=1,0,string,string,string,string
_ReplaceString_Defaults=
_ReplaceString_Category=TC_TPOF_CORE
RemoveString=1,0,string,string,string
_RemoveString_Defaults=
_RemoveString_Category=TC_TPOF_CORE
InsertString=1,0,string,string,integer,string
_InsertString_Defaults=
_InsertString_Category=TC_TPOF_CORE
EnglishGermanString=1,0,string,StringExt,StringExt
_EnglishGermanString_Defaults=
_EnglishGermanString_Category=TC_TPOF_CORE
EnglishGermanPluralString=1,0,string,StringExt,StringExt,StringExt,StringExt,integer
_EnglishGermanPluralString_Defaults=
_EnglishGermanPluralString_Category=TC_TPOF_CORE
LoadDmdfHashTableHandleInteger=1,0,integer,handle,integer
_LoadDmdfHashTableHandleInteger_Defaults=
_LoadDmdfHashTableHandleInteger_Category=TC_TPOF_CORE
HaveDmdfHashTableHandleInteger=1,0,boolean,handle,integer
_HaveDmdfHashTableHandleInteger_Defaults=
_HaveDmdfHashTableHandleInteger_Category=TC_TPOF_CORE
// Environment API
CreateDynamicLightning=1,0,ADynamicLightning,player,lightningtype,unit,unit
_CreateDynamicLightning_Defaults=_,LightningTypeCLPB,0.01,_,_
_CreateDynamicLightning_Category=TC_TPOF_ENVIRONMENT
CreateMissile=1,0,AMissile
_CreateMissile_Defaults=
_CreateMissile_Category=TC_TPOF_ENVIRONMENT
// Character API
GetTriggerCharacter=1,0,Character
_GetTriggerCharacter_Defaults=
_GetTriggerCharacter_Category=TC_TPOF_CHARACTER
GetTriggerClass=1,0,AClass
_GetTriggerClass_Defaults=
_GetTriggerClass_Category=TC_TPOF_CHARACTER
// returns force
GetCharacterPlayers=0,0,force
_GetCharacterPlayers_Defaults=
_GetCharacterPlayers_Category=TC_TPOF_CHARACTER
PlayerCharacter=1,0,Character,player
_PlayerCharacter_Defaults=
_PlayerCharacter_Category=TC_TPOF_CHARACTER
CharacterPlayer=1,0,player,Character
_CharacterPlayer_Defaults=
_CharacterPlayer_Category=TC_TPOF_CHARACTER
CharacterUnit=1,0,unit,Character
_CharacterUnit_Defaults=
_CharacterUnit_Category=TC_TPOF_CHARACTER
CharacterClass=1,0,AClass,Character
_CharacterClass_Defaults=
_CharacterClass_Category=TC_TPOF_CHARACTER
CharacterInventory=1,0,AInventory,Character
_CharacterInventory_Defaults=
_CharacterInventory_Category=TC_TPOF_CHARACTER
InventoryEquipmentItemType=1,0,itemcode,AInventory,EquipmentType
_InventoryEquipmentItemType_Defaults=
_InventoryEquipmentItemType_Category=TC_TPOF_CHARACTER
InventoryRucksackItemType=1,0,itemcode,AInventory,integer
_InventoryRucksackItemType_Defaults=
_InventoryRucksackItemType_Category=TC_TPOF_CHARACTER
InventoryRucksackItemCharges=1,0,integer,AInventory,integer
_InventoryRucksackItemCharges_Defaults=
_InventoryRucksackItemCharges_Category=TC_TPOF_CHARACTER
InventoryHasItemType=1,0,boolean,AInventory,itemcode