gokuta Posted December 30, 2014 Share Posted December 30, 2014 ; d% = anything; p% = label pointer; o% = object models all types; g% = gxt reference; x% = external script Those are variable types documented. 09A0=10,actor %1d% attach_object %2d% with_offset %3d% %4d% %5d% on_bone %6h% %7h% perform_animation %8h% IFP_file %9h% time %10h% What kind of type is h? 09A1=2,set_actor %1d% onbone_attached_objectB_operation %2b% That's the ony opcode I can find, that has b type. Maybe boolean... but is it recommended to use b instead of d when argument type is supposed to be boolean? Link to comment Share on other sites More sharing options...
Silent Posted December 30, 2014 Share Posted December 30, 2014 h seems to be identical to d. @Seemann, any info? Link to comment Share on other sites More sharing options...
fastman92 Posted December 30, 2014 Share Posted December 30, 2014 enum eSannyBuilderIniOpcodeValueType{SANNY_BUILDER_INI_OPCODE_VALUE_TYPE_UNDEFINED,SANNY_BUILDER_INI_OPCODE_VALUE_TYPE_PARTICLE_ID,SANNY_BUILDER_INI_OPCODE_VALUE_TYPE_ANYTHING,SANNY_BUILDER_INI_OPCODE_VALUE_TYPE_LABEL_POINTER,SANNY_BUILDER_INI_OPCODE_VALUE_TYPE_OBJECT_MODEL,SANNY_BUILDER_INI_OPCODE_VALUE_TYPE_GXT_REFERENCE,SANNY_BUILDER_INI_OPCODE_VALUE_TYPE_ZONE_NAME,SANNY_BUILDER_INI_OPCODE_VALUE_TYPE_LETTER_U,SANNY_BUILDER_INI_OPCODE_VALUE_TYPE_EXTERNAL_SCRIPT,SANNY_BUILDER_INI_OPCODE_VALUE_TYPE_STRING,SANNY_BUILDER_INI_OPCODE_VALUE_TYPE_PED_TYPE,SANNY_BUILDER_INI_OPCODE_VALUE_TYPE_WEAPON_ID,SANNY_BUILDER_INI_OPCODE_VALUE_TYPE_BOOLEAN,SANNY_BUILDER_INI_OPCODE_VALUE_TYPE_MAX};struct tSannyBuilderIniOpcodeValueTypeAndData{eSannyBuilderIniOpcodeValueType type;union {struct {char FalseStr[32];char TrueStr[32];} BOOLEAN;} data;};// Array used to find argument type by a modifierconst static std::pair<char, eSannyBuilderIniOpcodeValueType> SannyBuilderIniOpcodeValueTypePairArray[] ={std::make_pair('a', SANNY_BUILDER_INI_OPCODE_VALUE_TYPE_PARTICLE_ID),std::make_pair('b', SANNY_BUILDER_INI_OPCODE_VALUE_TYPE_BOOLEAN),std::make_pair('c', SANNY_BUILDER_INI_OPCODE_VALUE_TYPE_WEAPON_ID),std::make_pair('d', SANNY_BUILDER_INI_OPCODE_VALUE_TYPE_ANYTHING),std::make_pair('e', SANNY_BUILDER_INI_OPCODE_VALUE_TYPE_PED_TYPE),std::make_pair('g', SANNY_BUILDER_INI_OPCODE_VALUE_TYPE_GXT_REFERENCE),std::make_pair('h', SANNY_BUILDER_INI_OPCODE_VALUE_TYPE_ANYTHING),std::make_pair('o', SANNY_BUILDER_INI_OPCODE_VALUE_TYPE_OBJECT_MODEL),std::make_pair('p', SANNY_BUILDER_INI_OPCODE_VALUE_TYPE_LABEL_POINTER),std::make_pair('s', SANNY_BUILDER_INI_OPCODE_VALUE_TYPE_STRING),std::make_pair('u', SANNY_BUILDER_INI_OPCODE_VALUE_TYPE_ANYTHING),std::make_pair('x', SANNY_BUILDER_INI_OPCODE_VALUE_TYPE_EXTERNAL_SCRIPT),std::make_pair('z', SANNY_BUILDER_INI_OPCODE_VALUE_TYPE_ZONE_NAME),}; %h is not mapped to anything, so it's treated like %d by Sanny Builder. Link to comment Share on other sites More sharing options...
Seemann Posted December 30, 2014 Share Posted December 30, 2014 (edited) Those are derived from Mission Builder where h was intended to be a handle, whereas b was the true/false value. Both are not used at the moment by Sanny Builder. Edited December 30, 2014 by Seemann Silent 1 Sanny Builder 3 • SA Memory Handling • OpenIV • gtamodding.com CLEO.li - The CLEO Library - Official site Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now