// // commands_netshopping.sch // // All script commands related to network shopping // USING "types.sch" CONST_INT SHOPPING_TRANSACTION_MAX_NUMBER 15 CONST_INT SHOPPING_BASKET_MAX_NUMBER_ITEMS 70 CONST_INT NET_SHOP_INVALID_ID 2147483647 /// PURPOSE: Different states the game server session can be in. You shouldnt need to use it. /// ENUM GAMESERVER_STATES GAMESERVER_INVALID, GAMESERVER_PENDING_ACCESS_TOKEN, WAIT_FOR_START_SESSION, PENDING_CATALOG_VERSION, GAMESERVER_PENDING_CATALOG, GAMESERVER_CATALOG_COMPLETE, GAMESERVER_PENDING_SESSION_START, GAMESERVER_PENDING_SESSION_RESTART, GAMESERVER_READY, GAMESERVER_FAILED_ACCESS_TOKEN, GAMESERVER_FAILED_CATALOG, GAMESERVER_FAILED_SESSION_START, GAMESERVER_FAILED_SESSION_RESTART ENDENUM //Possible error codes for transactions ENUM GAMESERVERRESULTS GAMESERVER_SUCCESS, GAMESERVER_ERROR_UNDEFINED, GAMESERVER_ERROR_NOT_IMPLEMENTED, GAMESERVER_ERROR_SYSTEM_ERROR, GAMESERVER_ERROR_INVALID_DATA, GAMESERVER_ERROR_INVALID_PRICE, GAMESERVER_ERROR_INSUFFICIENT_FUNDS, GAMESERVER_ERROR_INSUFFICIENT_INVENTORY, GAMESERVER_ERROR_INCORRECT_FUNDS, GAMESERVER_ERROR_INVALID_ITEM, GAMESERVER_ERROR_INVALID_PERMISSIONS, GAMESERVER_ERROR_INVALID_CATALOG_VERSION, GAMESERVER_ERROR_INVALID_TOKEN, GAMESERVER_ERROR_INVALID_REQUEST, GAMESERVER_ERROR_INVALID_ACCOUNT, GAMESERVER_ERROR_INVALID_NONCE, GAMESERVER_ERROR_EXPIRED_TOKEN, GAMESERVER_ERROR_CACHE_OPERATION, GAMESERVER_ERROR_INVALID_LIMITER_DEFINITION, GAMESERVER_ERROR_GAME_TRANSACTION_EXCEPTION, GAMESERVER_ERROR_EXCEED_LIMIT, GAMESERVER_ERROR_EXCEED_LIMIT_MESSAGE, GAMESERVER_ERROR_AUTH_FAILED, GAMESERVER_ERROR_STALE_DATA, GAMESERVER_ERROR_BAD_SIGNATURE, GAMESERVER_ERROR_INVALID_CONFIGURATION, GAMESERVER_ERROR_NET_MAINTENANCE, GAMESERVER_ERROR_USER_FORCE_BAIL, GAMESERVER_ERROR_CLIENT_FORCE_FAILED, GAMESERVER_ERROR_INVALID_GAME_VERSION ENDENUM //Possible network shot transaction status. ENUM NET_GAMESERVER_TRANSACTION_STATUS TRANSACTION_STATUS_NONE, TRANSACTION_STATUS_PENDING, TRANSACTION_STATUS_FAILED, TRANSACTION_STATUS_SUCCESSFULL, TRANSACTION_STATUS_CANCELED ENDENUM //Defines for the flags that can be set when adding items to the basket or adding services. ENUM CATALOG_ITEM_FLAGS // Use only the WALLET in the transaction. CATALOG_ITEM_FLAG_WALLET_ONLY = 1, // Use only the BANK in the transaction. CATALOG_ITEM_FLAG_BANK_ONLY = 2, // Use the BANK then after that the WALLET in the transaction. CATALOG_ITEM_FLAG_BANK_THEN_WALLET = 4, // Use the WALLET then after that the BANK in the transaction. CATALOG_ITEM_FLAG_WALLET_THEN_BANK = 8, // Using Earned Virtual Cash only CATALOG_ITEM_FLAG_EVC_ONLY = 16, // Using tokens in the transaction. CATALOG_ITEM_FLAG_TOKEN = 32 ENDENUM //Defines for actions type's. HASH_ENUM ITEM_ACTION_TYPES NET_SHOP_ACTION_INVALID, //Action used when we transfer cash from bank account to wallet. NET_SHOP_ACTION_ALLOT, //Action used when we transfer cash from wallet to bank account. NET_SHOP_ACTION_RECOUP, //Action used when we earn cash in-game. NET_SHOP_ACTION_EARN, // Action used when we spend cash in-game. NET_SHOP_ACTION_SPEND, // Action used when we purchase GTA dolars. NET_SHOP_ACTION_PURCH, // Action used when we give cash to another player. NET_SHOP_ACTION_GIVE, // Action used when we use a certain ineventory item - not sure this will be used at all. NET_SHOP_ACTION_USE, // Action used when a character is deleted. NET_SHOP_ACTION_DELETE_CHAR, // Action used to buy an item at cost 0. NET_SHOP_ACTION_ACQUIRE, // Action used to buy a vehicle and mods at cost 0. NET_SHOP_ACTION_BUY_VEHICLE, // Action used to buy a beard, or makeup (really anything that you can only have X out of N different items in the category). NET_SHOP_ACTION_BUY_ITEM, // Action used to buy a propterty. NET_SHOP_ACTION_BUY_PROPERTY, // Action used to sell a vehicle. NET_SHOP_ACTION_SELL_VEHICLE, // Action used to buy vehicle mods only. NET_SHOP_ACTION_BUY_VEHICLE_MODS, // Create initial player appearance character. NET_SHOP_ACTION_CREATE_PLAYER_APPEARANCE, // Spend on limited service. NET_SHOP_ACTION_SPEND_LIMITED_SERVICE, // Spend on limited service. NET_SHOP_ACTION_EARN_LIMITED_SERVICE, //Buy a warehouse to store contraband NET_SHOP_ACTION_BUY_WAREHOUSE, //deducts money for the purchasing of the mission NET_SHOP_ACTION_BUY_CONTRABAND_MISSION, //used to change the quantity of contraband in a given warehouse. NET_SHOP_ACTION_ADD_CONTRABAND, //used to change the quantity of contraband in a given warehouse. NET_SHOP_ACTION_REMOVE_CONTRABAND, //resets the progress of a business (allows you to change interior and clear supply and product quantities). NET_SHOP_ACTION_RESET_BUSINESS_PROGRESS, //Updates the supply and product quantities appropriately. NET_SHOP_ACTION_UPDATE_BUSINESS_GOODS, //Updates the vehicles associated with warehouses, where applicable. NET_SHOP_ACTION_UPDATE_WAREHOUSE_VEHICLE, //Sends anticheat information back to server. NET_SHOP_ACTION_BONUS, //Action to buy casino chips NET_SHOP_ACTION_BUY_CASINO_CHIPS, //Action to sell casino chips NET_SHOP_ACTION_SELL_CASINO_CHIPS, //transaction that stores any INT value in the inventory NET_SHOP_ACTION_UPDATE_STORAGE_DATA, //Support being able to purchase the new unlock items with both GTA$ and tokens. NET_SHOP_ACTION_BUY_UNLOCK ENDENUM //Defines for transaction type's. HASH_ENUM TRANSACTION_TYPES NET_SHOP_TTYPE_INVALID, NET_SHOP_TTYPE_BASKET, NET_SHOP_TTYPE_SERVICE ENDENUM //Defines for item categories. HASH_ENUM SHOP_ITEM_CATEGORIES CATEGORY_CLOTH ,CATEGORY_WEAPON ,CATEGORY_WEAPON_MOD ,CATEGORY_MART ,CATEGORY_VEHICLE ,CATEGORY_VEHICLE_MOD ,CATEGORY_INVENTORY_VEHICLE_MOD ,CATEGORY_PROPERTIE ,CATEGORY_SERVICE ,CATEGORY_SERVICE_WITH_THRESHOLD ,CATEGORY_WEAPON_AMMO ,CATEGORY_BEARD ,CATEGORY_MKUP ,CATEGORY_INVENTORY_ITEM ,CATEGORY_INVENTORY_VEHICLE ,CATEGORY_INVENTORY_PROPERTIE ,CATEGORY_INVENTORY_BEARD ,CATEGORY_INVENTORY_MKUP ,CATEGORY_HAIR ,CATEGORY_TATTOO ,CATEGORY_INVENTORY_HAIR ,CATEGORY_INVENTORY_EYEBROWS ,CATEGORY_INVENTORY_CHEST_HAIR ,CATEGORY_INVENTORY_CONTACTS ,CATEGORY_INVENTORY_FACEPAINT ,CATEGORY_INVENTORY_BLUSHER ,CATEGORY_INVENTORY_LIPSTICK ,CATEGORY_CONTACTS ,CATEGORY_PRICE_MODIFIER ,CATEGORY_PRICE_OVERRIDE ,CATEGORY_SERVICE_UNLOCKED ,CATEGORY_EYEBROWS ,CATEGORY_CHEST_HAIR ,CATEGORY_FACEPAINT ,CATEGORY_BLUSHER ,CATEGORY_LIPSTICK ,CATEGORY_VENDING_MACHINE ,CATEGORY_SERVICE_WITH_LIMIT ,CATEGORY_SYSTEM ,CATEGORY_VEHICLE_UPGRADE ,CATEGORY_INVENTORY_PROPERTY_INTERIOR ,CATEGORY_PROPERTY_INTERIOR ,CATEGORY_INVENTORY_WAREHOUSE ,CATEGORY_WAREHOUSE ,CATEGORY_INVENTORY_CONTRABAND_MISSION ,CATEGORY_CONTRABAND_MISSION ,CATEGORY_CONTRABAND_QNTY ,CATEGORY_CONTRABAND_FLAGS ,CATEGORY_INVENTORY_WAREHOUSE_INTERIOR ,CATEGORY_WAREHOUSE_INTERIOR ,CATEGORY_WAREHOUSE_VEHICLE_INDEX ,CATEGORY_INVENTORY_PRICE_PAID ,CATEGORY_CASINO_CHIPS ,CATEGORY_DECORATION ,CATEGORY_DATA_STORAGE ,CATEGORY_CASINO_CHIP_REASON ,CATEGORY_CURRENCY_TYPE ,CATEGORY_INVENTORY_CURRENCY ,CATEGORY_EARN_CURRENCY ,CATEGORY_UNLOCK ENDENUM //Defines for item storage types. ENUM SHOP_ITEM_STORAGE NET_SHOP_ISTORAGE_INT, NET_SHOP_ISTORAGE_INT64, NET_SHOP_ISTORAGE_BITFIELD ENDENUM //Defines for transaction service type's. HASH_ENUM TRANSACTION_SERVICES SERVICE_INVALID ,SERVICE_SPEND_MECHANIC_WAGE ,SERVICE_SPEND_UTILITY_BILLS ,SERVICE_SPEND_PROSTITUTES ,SERVICE_SPEND_STRIP_CLUB ,SERVICE_SPEND_CINEMA ,SERVICE_SPEND_FAIRGROUND ,SERVICE_SPEND_LOTTERY ,SERVICE_SPEND_TELESCOPE ,SERVICE_SPEND_CALL_PLAYER ,SERVICE_SPEND_VEHICLE_INSURANCE ,SERVICE_SPEND_VEHICLE_INSURANCE_PREMIUM ,SERVICE_SPEND_CAR_REPAIR ,SERVICE_SPEND_PERSONAL_VEHICLE_DROPOFF ,SERVICE_SPEND_PEGASUS_DELIVERY ,SERVICE_SPEND_CAR_IMPOUND ,SERVICE_SPEND_CARWASH ,SERVICE_SPEND_HEALTHCARE ,SERVICE_SPEND_OTHER_PLAYER_HEALTHCARE ,SERVICE_SPEND_ARREST_BAIL ,SERVICE_SPEND_CASH_DROP ,SERVICE_SPEND_ROBBED_BY_MUGGER ,SERVICE_SPEND_CASH_DROP_HOLDUP ,SERVICE_SPEND_MATCH_ENTRY_FEE ,SERVICE_SPEND_RACE_VEHICLE_RENTAL ,SERVICE_SPEND_CHALLENGE_WAGER ,SERVICE_SPEND_BETTING ,SERVICE_SPEND_AIRSTRIKE ,SERVICE_SPEND_AMMO_DROP ,SERVICE_SPEND_BACKUP_GANG ,SERVICE_SPEND_BACKUP_HELI ,SERVICE_SPEND_BOAT_PICKUP ,SERVICE_SPEND_BOUNTY ,SERVICE_SPEND_BULL_SHARK ,SERVICE_SPEND_COPS_TURN_EYE ,SERVICE_SPEND_HELI_PICKUP ,SERVICE_SPEND_HIRE_MERCENARY ,SERVICE_SPEND_HIRE_MUGGER ,SERVICE_SPEND_LOCATE_VEHICLE ,SERVICE_SPEND_LOSE_WANTED_LEVEL ,SERVICE_SPEND_OFF_THE_RADAR ,SERVICE_SPEND_PASSIVE ,SERVICE_SPEND_REQUEST_HEIST ,SERVICE_SPEND_REQUEST_JOB ,SERVICE_SPEND_REVEAL_PLAYERS ,SERVICE_SPEND_TAXI ,SERVICE_SPEND_BANK_INTEREST ,SERVICE_SPEND_CASH_GIFT ,SERVICE_SPEND_CASH_SHARED ,SERVICE_SPEND_IMPROMPTU_RACE_FEE ,SERVICE_SPEND_BOUNTY_DM ,SERVICE_SPEND_STYLIST_FEE ,SERVICE_SPEND_MOVE_YACHT ,SERVICE_SPEND_BOSS_BUY_IN ,SERVICE_SPEND_PAY_BOSS ,SERVICE_SPEND_PAY_GOON ,SERVICE_SPEND_WAGER ,SERVICE_SPEND_RENAME_ORGANIZATION ,SERVICE_SPEND_YACHT_HELI ,SERVICE_SPEND_YACHT_BOAT ,SERVICE_SPEND_CONTRABAND ,SERVICE_SPEND_CONTRABAND_MISSION ,SERVICE_SPEND_PA_SERVICE_HELI ,SERVICE_SPEND_PA_SERVICE_VEHICLE ,SERVICE_SPEND_PA_SERVICE_SNACK ,SERVICE_SPEND_PA_SERVICE_DANCER ,SERVICE_SPEND_PA_SERVICE_IMPOUND ,SERVICE_SPEND_PA_SERVICE_HELI_PICKUP ,SERVICE_SPEND_ORDER_WAREHOUSE_VEHICLE ,SERVICE_SPEND_ORDER_BODYGUARD_VEHICLE ,SERVICE_SPEND_JUKEBOX ,SERVICE_SPEND_BA_VP_BOUNTY ,SERVICE_SPEND_BA_VP_BULLSHARK ,SERVICE_SPEND_BA_SARGE_AMMO ,SERVICE_SPEND_BA_SARGE_MOLOTOV ,SERVICE_SPEND_BA_ENFORCER_ARMOUR ,SERVICE_SPEND_BUSINESS ,SERVICE_SPEND_VEHICLE_EXPORT_MODS ,SERVICE_SPEND_PLAYER_APPEARANCE ,SERVICE_SPEND_IMPORT_EXPORT_REPAIR ,NETWORK_SPEND_HANGAR_UTILITY ,NETWORK_SPEND_HANGAR_STAFF ,SERVICE_SPEND_GANGOPS_CANNON ,SERVICE_SPEND_GANGOPS_SKIP_MISSION ,SERVICE_SPEND_GANGOPS_START_STRAND ,SERVICE_SPEND_GANGOPS_TRIP_SKIP ,SERVICE_SPEND_EMPLOY_ASSASSINS ,SERVICE_SPEND_ORBITAL_MANUAL ,SERVICE_SPEND_ORBITAL_AUTO ,SERVICE_SPEND_GANGOPS_REPAIR_COST ,SERVICE_SPEND_NIGHTCLUB_ENTRY_FEE ,SERVICE_SPEND_NIGHTCLUB_BAR_DRINK ,SERVICE_SPEND_NIGHTCLUB_DJ_REHIRE ,SERVICE_SPEND_ARENA_JOIN_SPECTATOR ,SERVICE_SPEND_ARENA_SPECTATOR_BOX ,SERVICE_SPEND_SPIN_THE_WHEEL_PAYMENT ,SERVICE_SPEND_MAKE_IT_RAIN ,SERVICE_SPEND_ARENA_PREMIUM_EVENT_ENTRY ,SERVICE_SPEND_CASINO_MEMBERSHIP ,SERVICE_SPEND_CASINO_GENERIC ,SERVICE_SPEND_ARCADE_GAME ,SERVICE_SPEND_ARCADE_GENERIC ,SERVICE_SPEND_CASINO_HEIST_SKIP_MISSION ,SERVICE_SPEND_CASINO_HEIST_SETUP_HEIST ,SERVICE_SPEND_CASINO_HEIST_CASINO_MODEL ,SERVICE_SPEND_CASINO_HEIST_VAULT_DOOR ,SERVICE_SPEND_CASINO_HEIST_DOOR_SECURITY ,SERVICE_SPEND_ISLAND_HEIST_SUPPORT_AIRSTRIKE ,SERVICE_SPEND_ISLAND_HEIST_SUPPORT_HEAVY_WEAPON ,SERVICE_SPEND_ISLAND_HEIST_SUPPORT_SNIPER ,SERVICE_SPEND_ISLAND_HEIST_SUPPORT_AIR_SUPPORT ,SERVICE_SPEND_ISLAND_HEIST_SUPPORT_DRONE ,SERVICE_SPEND_ISLAND_HEIST_SUPPORT_WEAPON_STASH ,SERVICE_SPEND_ISLAND_HEIST_SUPPRESSORS ,SERVICE_SPEND_ISLAND_HEIST_REPLAY ,SERVICE_SPEND_BEACH_PARTY_GENERIC ,SERVICE_SPEND_CASINO_CLUB_GENERIC ,SERVICE_SPEND_SUBMARINE_UTILITY_FEE ,SERVICE_SPEND_SUBMARINE_BOAT ,SERVICE_SPEND_SUBMARINE_RELOCATION ,SERVICE_SPEND_INTERACTION_MENU_ABILITY ,SERVICE_SPEND_BUSINESS_EXPENSES ,SERVICE_SPEND_REQUEST_SUPPLY ,SERVICE_SPEND_REQUEST_SOURCE_MOTORCYCLE ,SERVICE_SPEND_REQUEST_OUT_OF_SIGHT ,SERVICE_SPEND_FIXER_HQ_CONCIERGE ,SERVICE_SPEND_REQUEST_COMPANY_SUV ,SERVICE_SPEND_SOURCE_CARGO ,SERVICE_SPEND_AGENT_14_VEHICLE_REQUEST ,SERVICE_SPEND_TONY_LIMO ,SERVICE_SPEND_JUGALLO_BOSS_VEHICLE_REQUEST ,SERVICE_EARN_PICKUP ,SERVICE_EARN_CASHING_OUT ,SERVICE_EARN_INITIAL_CASH ,SERVICE_EARN_JOBS ,SERVICE_EARN_BETTING ,SERVICE_EARN_LOTTERY ,SERVICE_EARN_CHALLENGE_WIN ,SERVICE_EARN_PROPERTY_SALES ,SERVICE_EARN_VEHICLE_SALES ,SERVICE_EARN_LESTER_TARGET_KILL ,SERVICE_EARN_BOUNTY_COLLECTED ,SERVICE_EARN_CRATE_DROP ,SERVICE_EARN_HOLDUPS ,SERVICE_EARN_IMPORT_EXPORT ,SERVICE_EARN_ARMORED_TRUCKS ,SERVICE_EARN_JOBSHARE_CASH ,SERVICE_EARN_NOT_BADSPORT ,SERVICE_EARN_BANK_INTEREST ,SERVICE_EARN_ROCKSTAR ,SERVICE_EARN_DEBUG ,SERVICE_EARN_CNCW ,SERVICE_EARN_CNCB ,SERVICE_EARN_JOB_BONUS ,SERVICE_EARN_JOB_BONUS_CRIMINAL_MASTERMIND ,SERVICE_EARN_JOB_BONUS_HEIST_AWARD ,SERVICE_EARN_JOB_BONUS_FIRST_TIME_BONUS ,SERVICE_EARN_BEND_JOB ,SERVICE_EARN_PREMIUM_JOB ,SERVICE_EARN_PERSONAL_VEHICLE ,SERVICE_EARN_DAILY_OBJECTIVES ,SERVICE_EARN_AMBIENT_JOB_PLANE_TAKEDOWN ,SERVICE_EARN_AMBIENT_JOB_DISTRACT_COPS ,SERVICE_EARN_AMBIENT_JOB_DESTROY_VEH ,SERVICE_EARN_REFUND_BACKUP_VAGOS ,SERVICE_EARN_REFUND_BACKUP_LOST ,SERVICE_EARN_REFUND_BACKUP_FAMILIES ,SERVICE_EARN_REFUND_HIRE_MUGGER ,SERVICE_EARN_REFUND_HIRE_MERCENARY ,SERVICE_EARN_REFUND_BUY_CARDROPOFF ,SERVICE_EARN_REFUND_HELI_PICKUP ,SERVICE_EARN_REFUND_BOAT_PICKUP ,SERVICE_EARN_REFUND_CLEAR_WANTED ,SERVICE_EARN_REFUND_HEAD_2_HEAD ,SERVICE_EARN_REFUND_CHALLENGE ,SERVICE_EARN_REFUND_SHARE_LAST_JOB ,SERVICE_EARN_REFUND_LOTTERY ,SERVICE_EARN_GANGATTACK_PICKUP ,SERVICE_EARN_AMBIENT_JOB_HOT_TARGET_DELIVER ,SERVICE_EARN_AMBIENT_JOB_HOT_TARGET_KILL ,SERVICE_EARN_AMBIENT_JOB_PLANE_DROP ,SERVICE_EARN_AMBIENT_JOB_URBAN_WARFARE ,SERVICE_EARN_AMBIENT_JOB_CHECKPOINT_COLLECTION ,SERVICE_EARN_AMBIENT_JOB_TIME_TRIAL ,SERVICE_EARN_AMBIENT_JOB_CHALLENGES ,SERVICE_EARN_AMBIENT_JOB_HELI_HOT_TARGET ,SERVICE_EARN_AMBIENT_JOB_DEAD_DROP ,SERVICE_EARN_AMBIENT_JOB_PENNED_IN ,SERVICE_EARN_AMBIENT_JOB_MULTI_TARGET ,SERVICE_EARN_AMBIENT_JOB_PASS_PARCEL ,SERVICE_EARN_AMBIENT_JOB_BLAST ,SERVICE_EARN_AMBIENT_JOB_HOT_PROPERTY ,SERVICE_EARN_AMBIENT_JOB_KING ,SERVICE_EARN_AMBIENT_JOB_INFECT ,SERVICE_EARN_AMBIENT_JOB_MYSTERY_TEXT ,SERVICE_EARN_AMBIENT_JOB_BEAST ,SERVICE_EARN_BOSS ,SERVICE_EARN_GOON ,SERVICE_EARN_BOSS_AGENCY ,SERVICE_EARN_WAGE_PAYMENT ,SERVICE_EARN_WAGE_PAYMENT_BONUS ,SERVICE_EARN_FROM_CONTRABAND ,SERVICE_EARN_FROM_WAREHOUSE ,SERVICE_EARN_FROM_DESTROYING_CONTRABAND ,SERVICE_EARN_FROM_BUSINESS_PRODUCT ,SERVICE_EARN_REFUNDAPPEARANCE ,SERVICE_EARN_FROM_VEHICLE_EXPORT ,SERVICE_EARN_RDR_BONUS_ALL_SLOTS ,SERVICE_EARN_SMUGGLER_AGENCY ,SERVICE_EARN_REFUNDAMMODROP ,SERVICE_EARN_SALVAGE_CHECKPOINT_COLLECTION ,SERVICE_EARN_AMBIENT_MUGGING ,SERVICE_EARN_AMBIENT_PICKUP ,SERVICE_EARN_DEATHMATCH_BOUNTY ,SERVICE_EARN_REFUND_ORBITAL_MANUAL ,SERVICE_EARN_REFUND_ORBITAL_AUTO ,SERVICE_EARN_GANGOPS_WAGES ,SERVICE_EARN_GANGOPS_WAGES_BONUS ,SERVICE_EARN_DAR_CHALLENGE ,SERVICE_EARN_GANGOPS_PREP_PARTICIPATION ,SERVICE_EARN_GANGOPS_SETUP ,SERVICE_EARN_GANGOPS_SETUP_FAIL ,SERVICE_EARN_GANGOPS_FINALE ,SERVICE_EARN_GANGOPS_AWARD_MASTERMIND_2 ,SERVICE_EARN_GANGOPS_AWARD_MASTERMIND_3 ,SERVICE_EARN_GANGOPS_AWARD_MASTERMIND_4 ,SERVICE_EARN_GANGOPS_AWARD_LOYALTY_AWARD_2 ,SERVICE_EARN_GANGOPS_AWARD_LOYALTY_AWARD_3 ,SERVICE_EARN_GANGOPS_AWARD_LOYALTY_AWARD_4 ,SERVICE_EARN_GANGOPS_AWARD_FIRST_TIME_XM_BASE ,SERVICE_EARN_GANGOPS_AWARD_FIRST_TIME_XM_SUBMARINE ,SERVICE_EARN_GANGOPS_AWARD_FIRST_TIME_XM_SILO ,SERVICE_EARN_GANGOPS_AWARD_SUPPORTING ,SERVICE_EARN_GANGOPS_AWARD_ORDER ,SERVICE_EARN_GANGOPS_ELITE_XM_BASE ,SERVICE_EARN_GANGOPS_ELITE_XM_SUBMARINE ,SERVICE_EARN_GANGOPS_ELITE_XM_SILO ,SERVICE_EARN_GANGOPS_RIVAL_DELIVERY ,SERVICE_EARN_DOOMSDAY_FINALE_BONUS ,SERVICE_EARN_BOUNTY_HUNTER_REWARD ,SERVICE_EARN_FROM_BUSINESS_BATTLE ,SERVICE_EARN_FROM_CLUB_MANAGEMENT_PARTICIPATION ,SERVICE_EARN_FROM_FMBB_PHONECALL_MISSION ,SERVICE_EARN_FROM_BUSINESS_HUB_SELL ,SERVICE_EARN_FROM_FMBB_BOSS_WORK ,SERVICE_EARN_FMBB_WAGE_BONUS ,SERVICE_EARN_NIGHTCLUB_DANCING_AWARD ,SERVICE_EARN_RDR_BONUS_ALL_SLOTS_1 ,SERVICE_EARN_BB_EVENT_BONUS ,SERVICE_EARN_ARENA_SKILL_LVL_AWARD ,SERVICE_EARN_ASSASSINATE_TARGET_KILLED ,SERVICE_EARN_SPIN_THE_WHEEL_CASH ,SERVICE_EARN_ARENA_CAREER_TIER_PROGRESSION_1 ,SERVICE_EARN_ARENA_CAREER_TIER_PROGRESSION_2 ,SERVICE_EARN_ARENA_CAREER_TIER_PROGRESSION_3 ,SERVICE_EARN_ARENA_CAREER_TIER_PROGRESSION_4 ,SERVICE_EARN_ARENA_WAR ,SERVICE_EARN_REFUND_ARENA_SPEC_BOX_ENTRY ,SERVICE_EARN_AMBIENT_JOB_RC_TIME_TRIAL ,SERVICE_EARN_DAILY_OBJECTIVE_EVENT ,SERVICE_EARN_COLLECTABLES_ACTION_FIGURES ,SERVICE_EARN_CASINO_MISSION_REWARD ,SERVICE_EARN_CASINO_STORY_MISSION_REWARD ,SERVICE_EARN_CASINO_AWARD_MISSION_ONE_FIRST_TIME ,SERVICE_EARN_CASINO_AWARD_MISSION_TWO_FIRST_TIME ,SERVICE_EARN_CASINO_AWARD_MISSION_THREE_FIRST_TIME ,SERVICE_EARN_CASINO_AWARD_MISSION_FOUR_FIRST_TIME ,SERVICE_EARN_CASINO_AWARD_MISSION_FIVE_FIRST_TIME ,SERVICE_EARN_CASINO_AWARD_MISSION_SIX_FIRST_TIME ,SERVICE_EARN_CASINO_AWARD_STRAIGHT_FLUSH ,SERVICE_EARN_CASINO_AWARD_TOP_PAIR ,SERVICE_EARN_CASINO_AWARD_FULL_HOUSE ,SERVICE_EARN_CASINO_AWARD_LUCKY_LUCKY ,SERVICE_EARN_CASINO_AWARD_HIGH_ROLLER_BRONZE ,SERVICE_EARN_CASINO_AWARD_HIGH_ROLLER_SILVER ,SERVICE_EARN_CASINO_AWARD_HIGH_ROLLER_GOLD ,SERVICE_EARN_CASINO_AWARD_HIGH_ROLLER_PLATINUM ,SERVICE_EARN_CASINO_HEIST_SETUP_MISSION ,SERVICE_EARN_CASINO_HEIST_PREP_MISSION ,SERVICE_EARN_CASINO_HEIST_FINALE ,SERVICE_EARN_CASINO_HEIST_AWARD_SMASH_N_GRAB ,SERVICE_EARN_CASINO_HEIST_AWARD_IN_PLAIN_SIGHT ,SERVICE_EARN_CASINO_HEIST_AWARD_UNDETECTED ,SERVICE_EARN_CASINO_HEIST_AWARD_ALL_ROUNDER ,SERVICE_EARN_CASINO_HEIST_AWARD_ELITE_THIEF ,SERVICE_EARN_CASINO_HEIST_AWARD_PROFESSIONAL ,SERVICE_EARN_CASINO_HEIST_ELITE_STEALTH ,SERVICE_EARN_CASINO_HEIST_ELITE_SUBTERFUGE ,SERVICE_EARN_CASINO_HEIST_ELITE_DIRECT ,SERVICE_EARN_COLLECTABLE_ITEM ,SERVICE_EARN_COLLECTABLE_COMPLETED_COLLECTION ,SERVICE_EARN_COLLECTABLES_SIGNAL_JAMMERS ,SERVICE_EARN_COLLECTABLES_SIGNAL_JAMMERS_COMPLETE ,SERVICE_EARN_ISLAND_HEIST_FINALE ,SERVICE_EARN_ISLAND_HEIST_ELITE_CHALLENGE ,SERVICE_EARN_ISLAND_HEIST_AWARD_PROFESSIONAL ,SERVICE_EARN_ISLAND_HEIST_AWARD_ELITE_THIEF ,SERVICE_EARN_ISLAND_HEIST_AWARD_THE_ISLAND_HEIST ,SERVICE_EARN_ISLAND_HEIST_AWARD_GOING_ALONE ,SERVICE_EARN_ISLAND_HEIST_AWARD_TEAM_WORK ,SERVICE_EARN_ISLAND_HEIST_AWARD_CAT_BURGLAR ,SERVICE_EARN_ISLAND_HEIST_AWARD_PRO_THIEF ,SERVICE_EARN_ISLAND_HEIST_AWARD_MIXING_IT_UP ,SERVICE_EARN_ISLAND_HEIST_PREP ,SERVICE_EARN_ISLAND_HEIST_DJ_MISSION ,SERVICE_EARN_TUNER_ROBBERY_PREP ,SERVICE_EARN_TUNER_ROBBERY_FINALE ,SERVICE_EARN_TUNER_CAR_CLUB_MEMBERSHIP ,SERVICE_EARN_TUNER_DAILY_VEHICLE ,SERVICE_EARN_TUNER_DAILY_VEHICLE_BONUS ,SERVICE_EARN_TUNER_AWARD_UNION_DEPOSITORY ,SERVICE_EARN_TUNER_AWARD_MILITARY_CONVOY ,SERVICE_EARN_TUNER_AWARD_FLEECA_BANK ,SERVICE_EARN_TUNER_AWARD_FREIGHT_TRAIN ,SERVICE_EARN_TUNER_AWARD_BOLINGBROKE_ASS ,SERVICE_EARN_TUNER_AWARD_IAA_RAID ,SERVICE_EARN_TUNER_AWARD_METH_JOB ,SERVICE_EARN_TUNER_AWARD_BUNKER_RAID ,SERVICE_EARN_AMBIENT_JOB_HSW_TIME_TRIAL ,SERVICE_EARN_AUTO_SHOP_DELIVERY_AWARD ,SERVICE_EARN_AGENCY_SECURITY_CONTRACT ,SERVICE_EARN_AGENCY_PAYPHONE_HIT ,SERVICE_EARN_AGENCY_STORY_PREP ,SERVICE_EARN_AGENCY_STORY_FINALE ,SERVICE_EARN_FIXER_RIVAL_DELIVERY ,SERVICE_EARN_FIXER_AWARD_SEC_CON ,SERVICE_EARN_FIXER_AWARD_PHONE_HIT ,SERVICE_EARN_FIXER_AWARD_AGENCY_STORY ,SERVICE_EARN_FIXER_AWARD_SHORT_TRIP ,SERVICE_EARN_MUSIC_STUDIO_SHORT_TRIP ,SERVICE_EARN_NCLUB_TROUBLEMAKER ,SERVICE_EARN_CLUBHOUSE_DUFFLE_BAG ,SERVICE_EARN_SIGHTSEEING_REWARD ,SERVICE_EARN_AMBIENT_JOB_CLUBHOUSE_CONTRACT ,SERVICE_EARN_AMBIENT_JOB_UNDERWATER_CARGO ,SERVICE_EARN_AMBIENT_JOB_CRIME_SCENE ,SERVICE_EARN_AMBIENT_JOB_METAL_DETECTOR ,SERVICE_EARN_AMBIENT_JOB_SMUGGLER_PLANE ,SERVICE_EARN_AMBIENT_JOB_SMUGGLER_TRAIL ,SERVICE_EARN_AMBIENT_JOB_GOLDEN_GUN ,SERVICE_EARN_AMBIENT_JOB_AMMUNATION_DELIVERY ,SERVICE_EARN_AMBIENT_JOB_SOURCE_RESEARCH ,SERVICE_EARN_YOHAN_SOURCE_GOODS // #IF FEATURE_COPS_N_CROOKS // ,SERVICE_EARN_CNC_EOM // #ENDIF ENDENUM ///PURPOSE /// Network Event sent when the scAdmin makes changes to player balance/inventory /// this event can be triggered in sp/mp. /// CONST_INT MAX_NUM_ITEMS 20 STRUCT SCADMIN_UPDATE_EVENT INT m_fullRefreshRequested INT m_updatePlayerBalance INT m_awardTypeHash INT m_awardAmount INT m_items[MAX_NUM_ITEMS] ENDSTRUCT ///////////////////////////////////////////////////////////////////// ////////////////////////// INVENTORY ITEMS ////////////////////////// ///////////////////////////////////////////////////////////////////// #IF IS_DEBUG_BUILD //PURPOSE: This structure can be used to construct our catalog STRUCT ScriptCatalogItem //Unique Key used to identify a catalog item. TEXT_LABEL_63 m_key //Text Label used for the item. TEXT_LABEL_15 m_textTag //Name of the catalog item TEXT_LABEL_63 m_name //Category for the item. SHOP_ITEM_CATEGORIES m_category //Price value of the Item. INT m_price //Identifier of the stat that this item uses. INT m_stathash //Identifier of the stat that this item uses. SHOP_ITEM_STORAGE m_storagetype //Number of bits that the stat is shifted. INT m_bitshift //Number of bits that the stat uses. INT m_bitsize //Value for the stat enum in packed stats used for vehicle mods stat key calculations. INT m_statenumvalue //Value for the catalog only entries that represent prices for inventory items. INT m_statvalue ENDSTRUCT /// PURPOSE: Add items to our catalog /// INFO: NATIVE PROC NET_GAMESERVER_ADD_ITEM_TO_CATALOG(ScriptCatalogItem& item) = "0xeae106f5d3d0bc4c" NATIVE FUNC BOOL NET_GAMESERVER_REMOVE_CATALOG_ITEM(TEXT_LABEL_63& catalogItemKey) = "0x4981147c2112fc49" /// PURPOSE: Change item price. /// INFO: NATIVE FUNC BOOL NET_GAMESERVER_SET_CATALOG_ITEM_PRICE(TEXT_LABEL_63& itemkey, INT itemPrice) = "0xc09c98b726ee9579" /// PURPOSE: Change item text label. /// INFO: NATIVE FUNC BOOL NETWORK_SHOP_SET_CATALOG_ITEM_TEXT_LABEL(TEXT_LABEL_63& itemkey, TEXT_LABEL_63& textLabel) = "0x727c37960f5938ad" /// PURPOSE: Links 2 items in the catalog - if itemkeyA/itemkeyB is bought it will open the other item. /// INFO: By default Links A->B and B->A ( circular ) NATIVE FUNC BOOL NET_GAMESERVER_LINK_CATALOG_ITEMS(TEXT_LABEL_63& itemkeyA, TEXT_LABEL_63& itemkeyB, BOOL createCircularLink = TRUE) = "0x72fe3b99a6581589" NATIVE FUNC BOOL NET_GAMESERVER_ARE_CATALOG_ITEMS_LINKED(TEXT_LABEL_63& itemkeyA, TEXT_LABEL_63& itemkeyB, BOOL checkForCircularLink = TRUE) = "0x1e62f4e93e204976" NATIVE FUNC BOOL NET_GAMESERVER_REMOVE_LINKED_CATALOG_ITEMS(TEXT_LABEL_63& itemkeyA, TEXT_LABEL_63& itemkeyB, BOOL removeCircularLink = TRUE) = "0x927fc8dbe80ddc06" /// PURPOSE: Links 2 items in the catalog - if itemkeyA is sold it will also delete itemkeyB from the inventory /// INFO: NATIVE FUNC BOOL NET_GAMESERVER_LINK_CATALOG_ITEMS_FOR_SELLING(TEXT_LABEL_63& itemkeyA, TEXT_LABEL_63& itemkeyB) = "0xcfa402b56b643034" NATIVE FUNC BOOL NET_GAMESERVER_ARE_CATALOG_ITEMS_LINKED_FOR_SELLING(TEXT_LABEL_63& itemkeyA, TEXT_LABEL_63& itemkeyB) = "0xac492242e9d75a50" NATIVE FUNC BOOL NET_GAMESERVER_REMOVE_LINK_CATALOG_ITEMS_FOR_SELLING(TEXT_LABEL_63& itemkeyA, TEXT_LABEL_63& itemkeyB) = "0x6b8f793f06355be7" /// PURPOSE: Returns the current catalog version of the game /// INFO: NATIVE FUNC INT NET_GAMESERVER_GET_CATALOG_VERSION() = "0x674cb733ad247516" #ENDIF //IS_DEBUG_BUILD /// PURPOSE: Check if a catalog item exists. /// INFO: NATIVE FUNC BOOL NET_GAMESERVER_CATALOG_ITEM_IS_VALID( TEXT_LABEL_63& itemkey ) = "0x5b1b2a8fe51fdb2d" NATIVE FUNC BOOL NET_GAMESERVER_CATALOG_ITEM_KEY_IS_VALID( INT itemkey ) = "0x30057de4703c0da0" ///////////////////////////////////////////////////////////////////// ////////////////////////// CATALOG ITEMS ////////////////////////// ///////////////////////////////////////////////////////////////////// /// INFO: Make sure catalog is valid before even downloading the savegame using /// NET_GAMESERVER_CATALOG_IS_VALID. That can possibly be done at the same time the savegame /// is being downloaded but probably is better to just do it before. /// /// Usually you wont need to do anything since code tries to download the catalog for you. So /// use commands to make sure it has been done and if NET_GAMESERVER_CATALOG_IS_VALID is FALSE and /// NET_GAMESERVER_RETRIEVE_CATALOG_STATUS is false as well then try to use the NET_GAMESERVER_RETRIEVE_CATALOG. /// PURPOSE: Check if the catalog is valid and ready to be used. NATIVE FUNC BOOL NET_GAMESERVER_CATALOG_IS_VALID( ) = "0xa10787b951345252" /// PURPOSE: Check if the catalog is current, otherwise script will need to request the catalog again. NATIVE FUNC BOOL NET_GAMESERVER_IS_CATALOG_CURRENT( ) = "0xd6056e80737899a4" /// PURPOSE: Retrieve an item price. Item can be from the inventory /// or a service. NATIVE FUNC INT NET_GAMESERVER_GET_PRICE( INT itemId, SHOP_ITEM_CATEGORIES category, INT quantity ) = "0xbc8c74780a771297" NATIVE FUNC INT NET_GAMESERVER_GET_CATEGORY( INT itemId ) = "0x1ea222bdb50cd0dc" /// PURPOSE: /// Get the crc from the catalog. NATIVE FUNC INT NET_GAMESERVER_GET_CATALOG_CLOUD_CRC() = "0x5c1d76a1af94a070" /// PURPOSE: /// Requests the server catalog file. NATIVE FUNC BOOL NET_GAMESERVER_REFRESH_SERVER_CATALOG() = "0xbf1625e3bc032624" /// PURPOSE: Retrieve status from the operation started in NET_GAMESERVER_REFRESH_SERVER_CATALOG. Returns TRUE is status is successfull. /// Returns FALSE when the status is PENDING/FAILED. NATIVE FUNC BOOL NET_GAMESERVER_RETRIEVE_CATALOG_REFRESH_STATUS( NET_GAMESERVER_TRANSACTION_STATUS& currentStatus ) = "0x4f62f2c5dfe165d1" //PURPOSE: True when we're waiting for a refresh from the server. This can happen when the game token times out. The server will // send a GAMESERVER_ERROR_INVALID_NONCE or GAMESERVER_ERROR_EXPIRED_TOKEN NATIVE FUNC BOOL NET_GAMESERVER_GET_SESSION_STATE_AND_STATUS(INT& currentState, INT& refreshSessionRequested) = "0x5d66da471cacd32b" ///////////////////////////////////////////////////////////////////// ////////////////////////// SHOP SESSION ///////////////////////////// ///////////////////////////////////////////////////////////////////// /// PURPOSE: Does slot independant shop session initializition (downloads the server catalog among other things). NATIVE FUNC BOOL NET_GAMESERVER_INIT_SESSION( ) = "0x7f3fea7d9cf0dc6e" /// PURPOSE: After NET_GAMESERVER_INIT_SESSION use this to fetch the status - Returns TRUE when the operation is succssfull. NATIVE FUNC BOOL NET_GAMESERVER_RETRIEVE_INIT_SESSION_STATUS( NET_GAMESERVER_TRANSACTION_STATUS& currentStatus ) = "0x235f4dc72bbcc553" /// PURPOSE: Check if the game is waiting for script to call NET_GAMESERVER_START_SESSION and set a slot to be fetched (retrieves the inventory and player balance) NATIVE FUNC BOOL NET_GAMESERVER_START_SESSION_PENDING( ) = "0xfcac2ba43eebfd67" /// PURPOSE: Actually starts the shop session for a given slot (retrieves the inventory and player balance) NATIVE FUNC BOOL NET_GAMESERVER_START_SESSION( INT slot ) = "0xd18d5a2e89ffbbdd" /// PURPOSE: After NET_GAMESERVER_START_SESSION use this to fetch the status - Returns TRUE when the operation is succssfull. NATIVE FUNC BOOL NET_GAMESERVER_RETRIEVE_START_SESSION_STATUS( NET_GAMESERVER_TRANSACTION_STATUS& currentStatus ) = "0xae7d86f9ae8e7023" /// PURPOSE: Gets the error code if the session failed (if either INIT or START failed). NATIVE FUNC BOOL NET_GAMESERVER_RETRIEVE_SESSION_ERROR_CODE( INT& errorCode ) = "0xf5cd50011aebed08" /// PURPOSE: Check if Shop session is valid and ready to use (the simpler version of NET_GAMESERVER_RETRIEVE_START_SESSION_STATUS). NATIVE FUNC BOOL NET_GAMESERVER_IS_SESSION_VALID( INT slot ) = "0xd487b8e9c523defd" /// PURPOSE: Clear NET_GAMESERVER_IS_SESSION_VALID from download status. NATIVE FUNC BOOL NET_GAMESERVER_CLEAR_SESSION( INT slot ) = "0xd96b781b65d4d071" /// PURPOSE: Apply the data received from the server (ala NET_GAMESERVER_START_SESSION) /// Note: Be sure check the NET_GAMESERVER_RETRIEVE_START_SESSION_STATUS NATIVE FUNC BOOL NET_GAMESERVER_SESSION_APPLY_RECEIVED_DATA( INT slot) = "0xcbcd6607d498169c" NATIVE FUNC BOOL NET_GAMESERVER_START_SESSION_APPLY_DATA_PENDING( ) = "0xc87fbaa0b0e40d50" /// PURPOSE: Returns TRUE if the session is being refreshed so no transactions can be done. NATIVE FUNC BOOL NET_GAMESERVER_IS_SESSION_REFRESH_PENDING( ) = "0xba5b5030b7954daa" /// PURPOSE: Start a session restart must be called when we are in mp and have /// received a presence message and is safe to retrieve the inventory and/or player balance) NATIVE FUNC BOOL NET_GAMESERVER_START_SESSION_RESTART( BOOL inventory, BOOL playerbalance ) = "0xd05c5303ee30788b" /// PURPOSE: After NET_GAMESERVER_START_SESSION_RESTART use this to fetch the status - Returns TRUE when the operation is succssfull. NATIVE FUNC BOOL NET_GAMESERVER_START_SESSION_RESTART_STATUS( NET_GAMESERVER_TRANSACTION_STATUS& currentStatus ) = "0x6ed91b81a6269d6f" /// PURPOSE: Gets the error code if the session failed (if RESTART failed). NATIVE FUNC BOOL NET_GAMESERVER_START_SESSION_RESTART_ERROR_CODE( INT& errorCode ) = "0xb7b8a0edefdb1cdf" /// PURPOSE: Returns TRUE if a transaction is in Progress. NATIVE FUNC BOOL NET_GAMESERVER_TRANSACTION_IN_PROGRESS( ) = "0xb76e8f198fb54340" /// PURPOSE: Returns true when we should be using the transactions server NATIVE FUNC BOOL NET_GAMESERVER_USE_SERVER_TRANSACTIONS( ) = "0xa50ced7fb6e38751" /// PURPOSE: Returns true when a slot is valid. Must be checked After StartSession is successfull. NATIVE FUNC BOOL NET_GAMESERVER_GET_SLOT_IS_VALID(INT slot) = "0x4c7642b2101d7980" ///////////////////////////////////////////////////////////////////// ////////////////////////// SHOPPING BASKET ////////////////////////// ///////////////////////////////////////////////////////////////////// //PURPOSE // specific data for buyng a item and adding to the basket. STRUCT srcBasketItem //Catalog item key - this will have info about the item price. INT m_catalogKey //key - this will have info about the item in inventory, some items need 2 catalog entries one for the price and one for the inventory. INT m_extraInventoryKey //Item cost - this can be the value specified in the catalog // or what the client think it is. INT m_price //New stat value that will be set in the inventory. INT m_statvalue ENDSTRUCT /// PURPOSE: Create a basket for shopping. If doesnt exist already /// INFO: NATIVE FUNC BOOL NET_GAMESERVER_BASKET_START( INT& transactionId, SHOP_ITEM_CATEGORIES category, ITEM_ACTION_TYPES action, CATALOG_ITEM_FLAGS flags = CATALOG_ITEM_FLAG_WALLET_ONLY) = "0x76503dcd0bb2d833" /// PURPOSE: End Basket and let code know script doesnt need it anymore. This should only be /// when we are done with shooping and after the transaction has ended. We need to deal with error cases. /// INFO: NATIVE FUNC BOOL NET_GAMESERVER_BASKET_END( ) = "0x349e25ea131c0e2a" /// PURPOSE: Returns TRUE if there is ab Active basket. /// INFO: NATIVE FUNC BOOL NET_GAMESERVER_BASKET_IS_ACTIVE( ) = "0x3f5b892c35f3ff91" /// PURPOSE: Add an item to the basket /// INFO: NATIVE FUNC BOOL NET_GAMESERVER_BASKET_ADD_ITEM( srcBasketItem& basketItem, INT quantity ) = "0x598e220bd27f56ca" /// PURPOSE: Remove an item from the basket /// INFO: NATIVE FUNC BOOL NET_GAMESERVER_BASKET_REMOVE_ITEM( INT itemId ) = "0x1fefd84932535f01" /// PURPOSE: check if a item already exists in the basket /// INFO: NATIVE FUNC BOOL NET_GAMESERVER_BASKET_ITEM_EXISTS( INT id ) = "0xccbf14d35011465d" /// PURPOSE: Clear all items from the basket. /// INFO: NATIVE FUNC BOOL NET_GAMESERVER_BASKET_CLEAR_ALL_ITEMS( ) = "0x0c49ee0c4d33a89e" /// PURPOSE: Check if the basket is empty. /// INFO: NATIVE FUNC BOOL NET_GAMESERVER_BASKET_IS_EMPTY( ) = "0xdb42c3058f7a5848" /// PURPOSE: Check if the basket is full. /// INFO: NATIVE FUNC BOOL NET_GAMESERVER_BASKET_IS_FULL( ) = "0x03a58b305ffa997e" /// PURPOSE: Retrieve the number of items currently in the basket. /// INFO: NATIVE FUNC INT NET_GAMESERVER_BASKET_GET_NUMBER_OF_ITEMS( ) = "0x887808f47bc32256" //NOTE: This struct matches a code struct. STRUCT SHOP_BASKET_SERVER_DATA_INFO BOOL bCashUpdateReceived //Will be true if a cash update was received from the server. //Local vs. Server (how much did the server values change the local value) INT bankCashDifference INT walletCashDifference BOOL inventoryReceived //True if inventory data was received INT iNumItems //Number of invenotry items updated. ENDSTRUCT /// PURPOSE: Apply player balance and inventory item set data to stats. /// INFO: NATIVE FUNC BOOL NET_GAMESERVER_BASKET_APPLY_SERVER_DATA( INT transactionId, SHOP_BASKET_SERVER_DATA_INFO& info ) = "0xa51a2c9006cd8004" /////////////////////////////////////////////////////////////////////// ////////////////////////// SHOPPING CHECKOUT ////////////////////////// /////////////////////////////////////////////////////////////////////// /// PURPOSE: Start the checkout of all items pending to be paid for. /// INFO: This command should be used for the BASKET and SERVICES. NATIVE FUNC BOOL NET_GAMESERVER_CHECKOUT_START( INT transactionId ) = "0xe894c3f21e583743" /// PURPOSE: Returns TRUE when a checkout is in progress. /// INFO: NATIVE FUNC BOOL NET_GAMESERVER_CHECKOUT_PENDING( INT transactionId ) = "0x46db1d48f2d7c08e" /// PURPOSE: Returns TRUE when a checkout has completed successfully. /// INFO: NATIVE FUNC BOOL NET_GAMESERVER_CHECKOUT_SUCCESSFUL( INT transactionId ) = "0x68d94c40347d7aec" ////////////////////////////////////////////////////////////// ////////////////////////// SERVICES ////////////////////////// ////////////////////////////////////////////////////////////// /// PURPOSE: Returns TRUE if we managed to start paying a certain service. /// INFO: see TRANSACTION_SERVICES for all service types. Returns the unique /// transaction identifier in transactionId. Please use that id for other commands. NATIVE FUNC BOOL NET_GAMESERVER_BEGIN_SERVICE( INT& transactionId, SHOP_ITEM_CATEGORIES category, TRANSACTION_SERVICES service, ITEM_ACTION_TYPES actionType, INT cost, CATALOG_ITEM_FLAGS flags = CATALOG_ITEM_FLAG_WALLET_ONLY ) = "0x651232f0fbbd6c7f" /// PURPOSE: Returns TRUE if we managed to delete a certain service. NATIVE FUNC BOOL NET_GAMESERVER_END_SERVICE( INT transactionId ) = "0x5ace3de15ef4a616" ///////////////////////////////////////////////////////////////// ////////////////////////// DELETE SLOT ////////////////////////// ///////////////////////////////////////////////////////////////// /// PURPOSE: Returns TRUE if we managed to start deleting a character. NATIVE FUNC BOOL NET_GAMESERVER_DELETE_CHARACTER( int character, BOOL clearBank, INT reason ) = "0x104c4d01e9978f2b" /// PURPOSE: Returns status of deleting a character. NATIVE FUNC NET_GAMESERVER_TRANSACTION_STATUS NET_GAMESERVER_DELETE_CHARACTER_GET_STATUS( ) = "0x7b4873b0578ffe2d" /// PURPOSE: Before Calling another character delete and before calling the commands_money command that sets /// telemtry call this command. /// // NOTE: IT IS IMPORTANT THAT YOU TEST URE CODE AND MAKE SURE YOU ARE SETTING THE /// CORRECT NONCE SEED. FAILURE TO DO IT IS REALLY BAD.... /// NATIVE FUNC BOOL NET_GAMESERVER_DELETE_SET_TELEMETRY_NONCE_SEED( ) = "0x13bf5d027972316d" //////////////////////////////////////////////////////////////////// ////////////////////////// BANK TRANSFERS ////////////////////////// //////////////////////////////////////////////////////////////////// /// PURPOSE: Returns TRUE if we managed to start transfering cash from the bank to the wallet. NATIVE FUNC BOOL NET_GAMESERVER_TRANSFER_BANK_TO_WALLET( INT slot, INT amount ) = "0xb20c7345f1489bf1" /// PURPOSE: Returns status of the cash transfer. NATIVE FUNC NET_GAMESERVER_TRANSACTION_STATUS NET_GAMESERVER_TRANSFER_BANK_TO_WALLET_GET_STATUS( ) = "0xc94b30f65c69ada8" /// PURPOSE: Returns TRUE if we managed to start transfering cash from the wallet to the bank. NATIVE FUNC BOOL NET_GAMESERVER_TRANSFER_WALLET_TO_BANK( int character, int amount ) = "0xca60478c0d089d74" /// PURPOSE: Returns status of the cash transfer. NATIVE FUNC NET_GAMESERVER_TRANSACTION_STATUS NET_GAMESERVER_TRANSFER_WALLET_TO_BANK_GET_STATUS( ) = "0xff1451ceaa01267c" /// PURPOSE: Before Calling another cash transfer and before calling the commands_money command that sets /// telemetry call this command. /// // NOTE: IT IS IMPORTANT THAT YOU TEST URE CODE AND MAKE SURE YOU ARE SETTING THE /// CORRECT NONCE SEED. FAILURE TO DO IT IS REALLY BAD.... /// NATIVE FUNC BOOL NET_GAMESERVER_TRANSFER_CASH_SET_TELEMETRY_NONCE_SEED( ) = "0x44c0c3ec2e3e2a3c" //////////////////////////////////////////////////////////////////// ////////////////////////// TELEMETRY /////////////////////////////// //////////////////////////////////////////////////////////////////// /// PURPOSE: Before destroying successful transactions call this just before calling /// the commands_money.sch commands to setup the nonce for that telemetry. /// This will permit to link the transaction to the telemetry. /// // NOTE: IT IS IMPORTANT THAT YOU TEST URE CODE AND MAKE SURE YOU ARE SETTING THE /// CORRECT NONCE SEED. FAILURE TO DO IT IS REALLY BAD.... /// NATIVE FUNC BOOL NET_GAMESERVER_SET_TELEMETRY_NONCE_SEED( INT transactionId ) = "0xcde1c8cef9603c08" //////////////////////////////////////////////////////////////////// ////////////////////////// HEARTBEAT ////////////////////////// //////////////////////////////////////////////////////////////////// NATIVE FUNC BOOL NET_GAMESERVER_ADD_CATALOG_ITEM_TO_HEARTBEAT( INT itemId, INT value, INT price ) = "0x07c2993b9e3fa833" //eof