0

I'm trying to write a contract that has a table with few vectors, even tho it seems to be writing all the values correctly it fails to read the values back.

The structs and tables are bellow:

  struct game_asset {
     uint8_t type;
     uint8_t quantity;
     EOSLIB_SERIALIZE(game_asset,(type)(quantity))
  };

  struct player_assets {
      
      vector<game_asset> figthers; 
      vector<game_asset> promoters;

      EOSLIB_SERIALIZE(player_assets,(figthers)(promoters))
  };

  TABLE players_s {
     name wallet;
     player_assets assets;
     vector<uint32_t> list;
     uint64_t last_claim;
     uint64_t primary_key() const { return wallet.value; }
     EOSLIB_SERIALIZE(players_s,(wallet)(assets)(list)(last_claim))
  };
  typedef multi_index<name("players"), players_s> players_t;   
  players_t players = players_t(get_self(), get_self().value); 

Once I save the values I see the content on the table like this:

1   testtest123 {"figthers":[{"quantity":1,"type":2}],"promoters":[]}   [205256]    1641853772

However, when I try to read the assets field returns empty, my impression is that I'm failing on serialize correctly something

0

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.