tx · GhHrynfZe6Vj6jEJBtt9u2is6mRpBGjvRh5nbrhNvkJf

3NBXer7qR9yJh6bkDDMK1fWcMYyVgAMhGFX:  -0.01000000 Waves

2021.08.12 02:13 [1654357] smart account 3NBXer7qR9yJh6bkDDMK1fWcMYyVgAMhGFX > SELF 0.00000000 Waves

{ "type": 13, "id": "GhHrynfZe6Vj6jEJBtt9u2is6mRpBGjvRh5nbrhNvkJf", "fee": 1000000, "feeAssetId": null, "timestamp": 1628723675130, "version": 2, "chainId": 84, "sender": "3NBXer7qR9yJh6bkDDMK1fWcMYyVgAMhGFX", "senderPublicKey": "FzLqgx3z1ige5YuhjR5esJe6Ug78Eq1Nwezof8APt4h4", "proofs": [ "MT6bDymLyBegLetajyawHan3T3XW83m6B2KsCvYdmEkEhDJHN6JZzYFdxAdhMkvNhUfySLiB2CR6QAKYaC3Eg2H" ], "script": "base64:AAIFAAAAAAAABTIIAhIECgIICBoJCgJhMRIDaW52GgoKAmEyEgRjYXJkGgsKAmEzEgVjbGFzcxoTCgJhNBINdHJhbnNhY3Rpb25JZBoQCgJhNRIKY3VycmVudEtleRoPCgJhNhIJcGF5QW1vdW50GhUKAmE3Eg9jdXJyZW50S2V5Qnl0ZXMaDgoCYTgSCGNhcmROYW1lGhsKAmE5EhVjYXJkTmFtZUN1cnJlbnRQbGF5ZXIaEQoCYjESC2NhcmRzT3JhY2xlGg8KAmIyEgljYXJkc0dhbWUaDwoCYjMSCWNsYXNzR2FtZRoQCgJiNBIKYXNzZXRzR2FtZRoQCgJiNRIKaGlzdG9yaWNJZBoNCgJiNhIHJG1hdGNoMBoHCgJiNxIBdBoXCgJiOBIRY3VycmVudENhcmRTdGF0dXMaFgoCYjkSEGN1cnJlbnRDYXJkU2NvcmUaHQoCYzESF2N1cnJlbnRLZXlQbGF5ZXJCYWxhbmNlGhoKAmMyEhRjdXJyZW50UGxheWVyQmFsYW5jZRoWCgJjMxIQcGxheWVySW5UaGVBcmVuYRobCgJjNBIVYXJlbmFLZXlQbGF5ZXJCYWxhbmNlGhgKAmM1EhJhcmVuYVBsYXllckJhbGFuY2UaFAoCYzYSDmNhcmRJblRoZUFyZW5hGhQKAmM3Eg5hcmVuYUNhcmRTY29yZRoRCgJjOBILc3RhdHVzQ2FyZDEaEQoCYzkSC3N0YXR1c0NhcmQyGhEKAmQxEgtzdGF0dXNDYXJkMxoRCgJkMhILc3RhdHVzQ2FyZDQaEQoCZDMSC3N0YXR1c0NhcmQ1GhEKAmQ0EgtzdGF0dXNDYXJkNhoRCgJkNRILc3RhdHVzQ2FyZDcaEQoCZDYSC3N0YXR1c0NhcmQ4GhEKAmQ3EgtzdGF0dXNDYXJkORoSCgJkOBIMc3RhdHVzQ2FyZDEwGhEKAmQ5Egt2ZXJpZnlDYXJkcxoSCgJlMRIMdG9rZW5CYWxhbmNlGhYKAmUyEhBuZXdUb2tlblB1cmNoYXNlGhEKAmUzEgtzdGF0dXNDYXJkcxoOCgJlNBIIZm9sZEZ1bmMaCQoCZTUSA2FjYxoHCgJlNhIBZRodCgJlNxIXcmVzdWx0VmVyaWZ5U3RhdHVzQ2FyZHMaEwoCZTgSDSRsaXN0NTMyOTUzNjMaEwoCZTkSDSRzaXplNTMyOTUzNjMaEwoCZjESDSRhY2MwNTMyOTUzNjMaEwoCZjISDSRhY2MxNTMyOTUzNjMaEwoCZjMSDSRhY2MyNTMyOTUzNjMaEwoCZjQSDSRhY2MzNTMyOTUzNjMaEwoCZjUSDSRhY2M0NTMyOTUzNjMaEwoCZjYSDSRhY2M1NTMyOTUzNjMaEwoCZjcSDSRhY2M2NTMyOTUzNjMaEwoCZjgSDSRhY2M3NTMyOTUzNjMaEwoCZjkSDSRhY2M4NTMyOTUzNjMaEwoCZzESDSRhY2M5NTMyOTUzNjMaFAoCZzISDiRhY2MxMDUzMjk1MzYzGhQKAmczEg4kYWNjMTE1MzI5NTM2MxoMCgJnNBIGd2lubmVyGg4KAmc1EghkZWZlYXRlZBoRCgJnNhILd2lubmluZ0NhcmQaEgoCZzcSDGRlZmVhdGVkQ2FyZBoiCgJnOBIccG9pbnRzUmVtYWluaW5nT25XaW5uaW5nQ2FyZBoPCgJnORIJd2luUmV3YXJkGhEKAmgxEgtyZXdhcmRWYWx1ZRoSCgJoMhIMZGVmZWF0UmV3YXJkGhMKAmgzEg1uZXdIaXN0b3JpY0lkAAAAAAAAAAEAAAACYTEBAAAABHBsYXkAAAACAAAAAmEyAAAAAmEzBAAAAAJhNAkAAlgAAAABCAUAAAACYTEAAAANdHJhbnNhY3Rpb25JZAQAAAACYTUIBQAAAAJhMQAAAAZjYWxsZXIEAAAAAmE2CQEAAAAFdmFsdWUAAAABCAkAAZEAAAACCAUAAAACYTEAAAAIcGF5bWVudHMAAAAAAAAAAAAAAAAGYW1vdW50BAAAAAJhNwkAAlgAAAABCAgFAAAAAmExAAAABmNhbGxlcgAAAAVieXRlcwQAAAACYTgJAAEsAAAAAgkAASwAAAACBQAAAAJhMwIAAAABXwUAAAACYTIEAAAAAmE5CQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIFAAAAAmEzAgAAAAFfBQAAAAJhMgIAAAABXwUAAAACYTcEAAAAAmIxAQAAACCpz0Za55pAynV7mK8nAyxIGZ6TDQ18Qk40BaP/8f00kAQAAAACYjIJAARMAAAAAgIAAAAIQ2FyZF8xMDAJAARMAAAAAgIAAAAIQ2FyZF8yMDAJAARMAAAAAgIAAAAIQ2FyZF8zMDAJAARMAAAAAgIAAAAIQ2FyZF80MDAJAARMAAAAAgIAAAAIQ2FyZF81MDAJAARMAAAAAgIAAAAIQ2FyZF82MDAJAARMAAAAAgIAAAAIQ2FyZF83MDAJAARMAAAAAgIAAAAIQ2FyZF84MDAJAARMAAAAAgIAAAAIQ2FyZF85MDAJAARMAAAAAgIAAAAJQ2FyZF8xMDAwBQAAAANuaWwEAAAAAmIzCQAETAAAAAICAAAABENhcmQFAAAAA25pbAQAAAACYjQJAARMAAAAAgIAAAAsQ1JzRFgzVlhpZXJZcGg0aEhIcFZUVXo3REFNUGlvSzYzM1lOanJkQ0hQZWYFAAAAA25pbAQAAAACYjUEAAAAAmI2CQAEGgAAAAIFAAAABHRoaXMCAAAACmhpc3RvcmljSWQDCQAAAQAAAAIFAAAAAmI2AgAAAANJbnQEAAAAAmI3BQAAAAJiNgUAAAACYjcAAAAAAAAAAAAEAAAAAmI4BAAAAAJiNgkABB0AAAACBQAAAAR0aGlzCQABLAAAAAICAAAAB3N0YXR1c18FAAAAAmE5AwkAAAEAAAACBQAAAAJiNgIAAAAGU3RyaW5nBAAAAAJiNwUAAAACYjYFAAAAAmI3AgAAAAAEAAAAAmI5BAAAAAJiNgkABBoAAAACBQAAAAR0aGlzBQAAAAJhOAMJAAABAAAAAgUAAAACYjYCAAAAA0ludAQAAAACYjcFAAAAAmI2BQAAAAJiNwAAAAAAAAAAAAQAAAACYzEJAAEsAAAAAgIAAAAPYmFsYW5jZV9yZXdhcmRfBQAAAAJhNwQAAAACYzIEAAAAAmI2CQAEGgAAAAIFAAAABHRoaXMFAAAAAmMxAwkAAAEAAAACBQAAAAJiNgIAAAADSW50BAAAAAJiNwUAAAACYjYFAAAAAmI3AAAAAAAAAAAABAAAAAJjMwQAAAACYjYJAAQdAAAAAgUAAAAEdGhpcwIAAAAQcGxheWVySW5UaGVBcmVuYQMJAAABAAAAAgUAAAACYjYCAAAABlN0cmluZwQAAAACYjcFAAAAAmI2BQAAAAJiNwIAAAAABAAAAAJjNAkAASwAAAACAgAAAA9iYWxhbmNlX3Jld2FyZF8FAAAAAmMzBAAAAAJjNQQAAAACYjYJAAQaAAAAAgUAAAAEdGhpcwUAAAACYzQDCQAAAQAAAAIFAAAAAmI2AgAAAANJbnQEAAAAAmI3BQAAAAJiNgUAAAACYjcAAAAAAAAAAAAEAAAAAmM2BAAAAAJiNgkABB0AAAACBQAAAAR0aGlzAgAAAA5jYXJkSW5UaGVBcmVuYQMJAAABAAAAAgUAAAACYjYCAAAABlN0cmluZwQAAAACYjcFAAAAAmI2BQAAAAJiNwIAAAAABAAAAAJjNwQAAAACYjYJAAQaAAAAAgUAAAAEdGhpcwIAAAAOYXJlbmFDYXJkU2NvcmUDCQAAAQAAAAIFAAAAAmI2AgAAAANJbnQEAAAAAmI3BQAAAAJiNgUAAAACYjcAAAAAAAAAAAAEAAAAAmM4AwkAAAAAAAACBAAAAAJiNgkABB0AAAACBQAAAAR0aGlzCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAAAdzdGF0dXNfBQAAAAJhMwIAAAAFXzEwMF8FAAAAAmE3AwkAAAEAAAACBQAAAAJiNgIAAAAGU3RyaW5nBAAAAAJiNwUAAAACYjYFAAAAAmI3AgAAAAACAAAABFVzZWQAAAAAAAAAAAEAAAAAAAAAAAAEAAAAAmM5AwkAAAAAAAACBAAAAAJiNgkABB0AAAACBQAAAAR0aGlzCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAAAdzdGF0dXNfBQAAAAJhMwIAAAAFXzIwMF8FAAAAAmE3AwkAAAEAAAACBQAAAAJiNgIAAAAGU3RyaW5nBAAAAAJiNwUAAAACYjYFAAAAAmI3AgAAAAACAAAABFVzZWQAAAAAAAAAAAEAAAAAAAAAAAAEAAAAAmQxAwkAAAAAAAACBAAAAAJiNgkABB0AAAACBQAAAAR0aGlzCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAAAdzdGF0dXNfBQAAAAJhMwIAAAAFXzMwMF8FAAAAAmE3AwkAAAEAAAACBQAAAAJiNgIAAAAGU3RyaW5nBAAAAAJiNwUAAAACYjYFAAAAAmI3AgAAAAACAAAABFVzZWQAAAAAAAAAAAEAAAAAAAAAAAAEAAAAAmQyAwkAAAAAAAACBAAAAAJiNgkABB0AAAACBQAAAAR0aGlzCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAAAdzdGF0dXNfBQAAAAJhMwIAAAAFXzQwMF8FAAAAAmE3AwkAAAEAAAACBQAAAAJiNgIAAAAGU3RyaW5nBAAAAAJiNwUAAAACYjYFAAAAAmI3AgAAAAACAAAABFVzZWQAAAAAAAAAAAEAAAAAAAAAAAAEAAAAAmQzAwkAAAAAAAACBAAAAAJiNgkABB0AAAACBQAAAAR0aGlzCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAAAdzdGF0dXNfBQAAAAJhMwIAAAAFXzUwMF8FAAAAAmE3AwkAAAEAAAACBQAAAAJiNgIAAAAGU3RyaW5nBAAAAAJiNwUAAAACYjYFAAAAAmI3AgAAAAACAAAABFVzZWQAAAAAAAAAAAEAAAAAAAAAAAAEAAAAAmQ0AwkAAAAAAAACBAAAAAJiNgkABB0AAAACBQAAAAR0aGlzCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAAAdzdGF0dXNfBQAAAAJhMwIAAAAFXzYwMF8FAAAAAmE3AwkAAAEAAAACBQAAAAJiNgIAAAAGU3RyaW5nBAAAAAJiNwUAAAACYjYFAAAAAmI3AgAAAAACAAAABFVzZWQAAAAAAAAAAAEAAAAAAAAAAAAEAAAAAmQ1AwkAAAAAAAACBAAAAAJiNgkABB0AAAACBQAAAAR0aGlzCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAAAdzdGF0dXNfBQAAAAJhMwIAAAAFXzcwMF8FAAAAAmE3AwkAAAEAAAACBQAAAAJiNgIAAAAGU3RyaW5nBAAAAAJiNwUAAAACYjYFAAAAAmI3AgAAAAACAAAABFVzZWQAAAAAAAAAAAEAAAAAAAAAAAAEAAAAAmQ2AwkAAAAAAAACBAAAAAJiNgkABB0AAAACBQAAAAR0aGlzCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAAAdzdGF0dXNfBQAAAAJhMwIAAAAFXzgwMF8FAAAAAmE3AwkAAAEAAAACBQAAAAJiNgIAAAAGU3RyaW5nBAAAAAJiNwUAAAACYjYFAAAAAmI3AgAAAAACAAAABFVzZWQAAAAAAAAAAAEAAAAAAAAAAAAEAAAAAmQ3AwkAAAAAAAACBAAAAAJiNgkABB0AAAACBQAAAAR0aGlzCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAAAdzdGF0dXNfBQAAAAJhMwIAAAAFXzkwMF8FAAAAAmE3AwkAAAEAAAACBQAAAAJiNgIAAAAGU3RyaW5nBAAAAAJiNwUAAAACYjYFAAAAAmI3AgAAAAACAAAABFVzZWQAAAAAAAAAAAEAAAAAAAAAAAAEAAAAAmQ4AwkAAAAAAAACBAAAAAJiNgkABB0AAAACBQAAAAR0aGlzCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAAAdzdGF0dXNfBQAAAAJhMwIAAAAGXzEwMDBfBQAAAAJhNwMJAAABAAAAAgUAAAACYjYCAAAABlN0cmluZwQAAAACYjcFAAAAAmI2BQAAAAJiNwIAAAAAAgAAAARVc2VkAAAAAAAAAAABAAAAAAAAAAAABAAAAAJkOQQAAAACYjYJAAQbAAAAAgUAAAAEdGhpcwkAASwAAAACAgAAABBidXlfY2FyZHNfdm9sMDFfBQAAAAJhNwMJAAABAAAAAgUAAAACYjYCAAAAB0Jvb2xlYW4EAAAAAmI3BQAAAAJiNgUAAAACYjcHBAAAAAJlMQQAAAACYjYJAAQaAAAAAgUAAAAEdGhpcwkAASwAAAACAgAAAA50b2tlbl9iYWxhbmNlXwUAAAACYTcDCQAAAQAAAAIFAAAAAmI2AgAAAANJbnQEAAAAAmI3BQAAAAJiNgUAAAACYjcAAAAAAAAAAAAEAAAAAmUyCQAAaAAAAAIICQABkQAAAAIIBQAAAAJhMQAAAAhwYXltZW50cwAAAAAAAAAAAAAAAAZhbW91bnQAAAAAAAAAJxAEAAAAAmUzCQAETAAAAAIFAAAAAmM4CQAETAAAAAIFAAAAAmM5CQAETAAAAAIFAAAAAmQxCQAETAAAAAIFAAAAAmQyCQAETAAAAAIFAAAAAmQzCQAETAAAAAIFAAAAAmQ0CQAETAAAAAIFAAAAAmQ1CQAETAAAAAIFAAAAAmQ2CQAETAAAAAIFAAAAAmQ3CQAETAAAAAIFAAAAAmQ4BQAAAANuaWwKAQAAAAJlNAAAAAIAAAACZTUAAAACZTYJAABkAAAAAgUAAAACZTUFAAAAAmU2BAAAAAJlNwQAAAACZTgFAAAAAmUzBAAAAAJlOQkAAZAAAAABBQAAAAJlOAQAAAACZjEAAAAAAAAAAAADCQAAAAAAAAIFAAAAAmU5AAAAAAAAAAAABQAAAAJmMQQAAAACZjIJAQAAAAJlNAAAAAIFAAAAAmYxCQABkQAAAAIFAAAAAmU4AAAAAAAAAAAAAwkAAAAAAAACBQAAAAJlOQAAAAAAAAAAAQUAAAACZjIEAAAAAmYzCQEAAAACZTQAAAACBQAAAAJmMgkAAZEAAAACBQAAAAJlOAAAAAAAAAAAAQMJAAAAAAAAAgUAAAACZTkAAAAAAAAAAAIFAAAAAmYzBAAAAAJmNAkBAAAAAmU0AAAAAgUAAAACZjMJAAGRAAAAAgUAAAACZTgAAAAAAAAAAAIDCQAAAAAAAAIFAAAAAmU5AAAAAAAAAAADBQAAAAJmNAQAAAACZjUJAQAAAAJlNAAAAAIFAAAAAmY0CQABkQAAAAIFAAAAAmU4AAAAAAAAAAADAwkAAAAAAAACBQAAAAJlOQAAAAAAAAAABAUAAAACZjUEAAAAAmY2CQEAAAACZTQAAAACBQAAAAJmNQkAAZEAAAACBQAAAAJlOAAAAAAAAAAABAMJAAAAAAAAAgUAAAACZTkAAAAAAAAAAAUFAAAAAmY2BAAAAAJmNwkBAAAAAmU0AAAAAgUAAAACZjYJAAGRAAAAAgUAAAACZTgAAAAAAAAAAAUDCQAAAAAAAAIFAAAAAmU5AAAAAAAAAAAGBQAAAAJmNwQAAAACZjgJAQAAAAJlNAAAAAIFAAAAAmY3CQABkQAAAAIFAAAAAmU4AAAAAAAAAAAGAwkAAAAAAAACBQAAAAJlOQAAAAAAAAAABwUAAAACZjgEAAAAAmY5CQEAAAACZTQAAAACBQAAAAJmOAkAAZEAAAACBQAAAAJlOAAAAAAAAAAABwMJAAAAAAAAAgUAAAACZTkAAAAAAAAAAAgFAAAAAmY5BAAAAAJnMQkBAAAAAmU0AAAAAgUAAAACZjkJAAGRAAAAAgUAAAACZTgAAAAAAAAAAAgDCQAAAAAAAAIFAAAAAmU5AAAAAAAAAAAJBQAAAAJnMQQAAAACZzIJAQAAAAJlNAAAAAIFAAAAAmcxCQABkQAAAAIFAAAAAmU4AAAAAAAAAAAJAwkAAAAAAAACBQAAAAJlOQAAAAAAAAAACgUAAAACZzIEAAAAAmczCQEAAAACZTQAAAACBQAAAAJnMgkAAZEAAAACBQAAAAJlOAAAAAAAAAAACgkAAAIAAAABAgAAABNMaXN0IHNpemUgZXhjZWVkIDEwAwkAAAAAAAACBQAAAAJhMwIAAAATVG9rZW5zIE9yYWNsZSBBcmVuYQkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAOdG9rZW5fYmFsYW5jZV8FAAAAAmE3AgAAAAFfBQAAAAJhNAUAAAACZTIFAAAAA25pbAMDAwkAAAAAAAACBQAAAAJhMgIAAAAJQnV5IENhcmRzCQAAAAAAAAIFAAAAAmE2AAAAAAAF9eEABwkBAAAAASEAAAABBQAAAAJkOQcJAARMAAAAAgkBAAAADEJvb2xlYW5FbnRyeQAAAAIJAAEsAAAAAgIAAAAQYnV5X2NhcmRzX3ZvbDAxXwUAAAACYTcGBQAAAANuaWwDAwMJAAAAAAAAAgUAAAACYTICAAAACUJ1eSBDYXJkcwkAAAAAAAACBQAAAAJhNgAAAAAABfXhAAcJAQAAAAEhAAAAAQUAAAACZDkHCQAAAgAAAAECAAAAOFlvdSBoYXZlIGFscmVhZHkgcHVyY2hhc2VkIHRoaXMgaXRlbSBvbiB0aGUgbWFya2V0cGxhY2UuAwMJAQAAAAEhAAAAAQkBAAAAD2NvbnRhaW5zRWxlbWVudAAAAAIFAAAAAmIzBQAAAAJhMwYJAQAAAAEhAAAAAQkBAAAAD2NvbnRhaW5zRWxlbWVudAAAAAIFAAAAAmIyBQAAAAJhOAkAAAIAAAABAgAAAEJUaGUgY2FyZCBzZW50IGRvZXMgbm90IGV4aXN0IGluIHRoZSBnYW1lISBQbGVhc2UgY2hlY2sgeW91ciBjYXJkcyEDCQEAAAACIT0AAAACBQAAAAJhNgAAAAAAAJiWgAkAAAIAAAABAgAAACdFYWNoIG1vdmUgaGFzIGEgZml4ZWQgdmFsdWUgb2YgMSB0b2tlbi4DCQAAZwAAAAIAAAAAAAAAAAAJAAPwAAAAAgUAAAACYTUFAAAAAmIxCQAAAgAAAAECAAAAQllvdSBtdXN0IGhhdmUgdGhlIGNhcmRzIGluIHlvdXIgd2FsbGV0ISBHZXQgaXQgb24gdGhlIG1hcmtldHBsYWNlIQMDCQAAAAAAAAIFAAAAAmM2AgAAAAAGCQAAAAAAAAIFAAAAAmMzAgAAAAAJAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgIAAAAQcGxheWVySW5UaGVBcmVuYQUAAAACYTcJAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgIAAAAOY2FyZEluVGhlQXJlbmEFAAAAAmE4CQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACAgAAAA5hcmVuYUNhcmRTY29yZQUAAAACYjkJAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgkAASwAAAACAgAAAAdzdGF0dXNfBQAAAAJhOQIAAAAEVXNlZAUAAAADbmlsAwkAAAAAAAACBQAAAAJiOAIAAAAEVXNlZAkAAAIAAAABAgAAAFJUaGlzIGNhcmQgaGFzIGFscmVhZHkgYmVlbiB1c2VkISBVc2UgYWxsIHRoZSBjYXJkcyBpbiB0aGUgZGVjayB0byB1bmxvY2sgaXQgYWdhaW4hBAAAAAJnNAMJAABmAAAAAgUAAAACYjkFAAAAAmM3BQAAAAJhNwUAAAACYzMEAAAAAmc1AwkAAGYAAAACBQAAAAJjNwUAAAACYjkFAAAAAmE3AwkAAGYAAAACBQAAAAJiOQUAAAACYzcFAAAAAmMzBQAAAAJhNwQAAAACZzYDCQAAZgAAAAIFAAAAAmI5BQAAAAJjNwUAAAACYTgFAAAAAmM2BAAAAAJnNwMJAABmAAAAAgUAAAACYzcFAAAAAmI5BQAAAAJhOAMJAABmAAAAAgUAAAACYjkFAAAAAmM3BQAAAAJjNgUAAAACYTcEAAAAAmc4AwkAAGYAAAACBQAAAAJiOQUAAAACYzcJAABlAAAAAgUAAAACYjkFAAAAAmM3CQAAZQAAAAIFAAAAAmM3BQAAAAJiOQQAAAACZzkDCQAAZgAAAAIFAAAAAmI5BQAAAAJjNwUAAAACYTYJAABpAAAAAgUAAAACYTYAAAAAAAAAAAIEAAAAAmgxAwkAAAAAAAACBQAAAAJnNAUAAAACYTcJAABkAAAAAgUAAAACZzkFAAAAAmMyAwkAAAAAAAACBQAAAAJnNAUAAAACYzMJAABkAAAAAgUAAAACZzkFAAAAAmM1CQAAAgAAAAECAAAAIkPDs2RpZ28gMDEwMTA1LiBDb250YXRlIG8gc3Vwb3J0ZSEEAAAAAmgyAAAAAAAAAAAABAAAAAJoMwkAAGQAAAACBQAAAAJiNQAAAAAAAAAAAQkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACAgAAABBwbGF5ZXJJblRoZUFyZW5hBQAAAAJnNAkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACAgAAAA5jYXJkSW5UaGVBcmVuYQUAAAACZzYJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAICAAAADmFyZW5hQ2FyZFNjb3JlBQAAAAJnOAkABEwAAAACAwkAAAAAAAACBQAAAAJlNwAAAAAAAAAACQkBAAAAC1N0cmluZ0VudHJ5AAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAHc3RhdHVzXwUAAAACYTMCAAAABV8xMDBfBQAAAAJhNwIAAAAACQEAAAALU3RyaW5nRW50cnkAAAACAgAAAA9FbHNlT2JyaWdhdG9yaW8CAAAAF1RvZG9zIG9zIGVsc2VzIGdyYXZhZG9zCQAETAAAAAIDCQAAAAAAAAIFAAAAAmU3AAAAAAAAAAAJCQEAAAALU3RyaW5nRW50cnkAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAAAdzdGF0dXNfBQAAAAJhMwIAAAAFXzIwMF8FAAAAAmE3AgAAAAAJAQAAAAtTdHJpbmdFbnRyeQAAAAICAAAAD0Vsc2VPYnJpZ2F0b3JpbwIAAAAXVG9kb3Mgb3MgZWxzZXMgZ3JhdmFkb3MJAARMAAAAAgMJAAAAAAAAAgUAAAACZTcAAAAAAAAAAAkJAQAAAAtTdHJpbmdFbnRyeQAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAICAAAAB3N0YXR1c18FAAAAAmEzAgAAAAVfMzAwXwUAAAACYTcCAAAAAAkBAAAAC1N0cmluZ0VudHJ5AAAAAgIAAAAPRWxzZU9icmlnYXRvcmlvAgAAABdUb2RvcyBvcyBlbHNlcyBncmF2YWRvcwkABEwAAAACAwkAAAAAAAACBQAAAAJlNwAAAAAAAAAACQkBAAAAC1N0cmluZ0VudHJ5AAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAHc3RhdHVzXwUAAAACYTMCAAAABV80MDBfBQAAAAJhNwIAAAAACQEAAAALU3RyaW5nRW50cnkAAAACAgAAAA9FbHNlT2JyaWdhdG9yaW8CAAAAF1RvZG9zIG9zIGVsc2VzIGdyYXZhZG9zCQAETAAAAAIDCQAAAAAAAAIFAAAAAmU3AAAAAAAAAAAJCQEAAAALU3RyaW5nRW50cnkAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAAAdzdGF0dXNfBQAAAAJhMwIAAAAFXzUwMF8FAAAAAmE3AgAAAAAJAQAAAAtTdHJpbmdFbnRyeQAAAAICAAAAD0Vsc2VPYnJpZ2F0b3JpbwIAAAAXVG9kb3Mgb3MgZWxzZXMgZ3JhdmFkb3MJAARMAAAAAgMJAAAAAAAAAgUAAAACZTcAAAAAAAAAAAkJAQAAAAtTdHJpbmdFbnRyeQAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAICAAAAB3N0YXR1c18FAAAAAmEzAgAAAAVfNjAwXwUAAAACYTcCAAAAAAkBAAAAC1N0cmluZ0VudHJ5AAAAAgIAAAAPRWxzZU9icmlnYXRvcmlvAgAAABdUb2RvcyBvcyBlbHNlcyBncmF2YWRvcwkABEwAAAACAwkAAAAAAAACBQAAAAJlNwAAAAAAAAAACQkBAAAAC1N0cmluZ0VudHJ5AAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAHc3RhdHVzXwUAAAACYTMCAAAABV83MDBfBQAAAAJhNwIAAAAACQEAAAALU3RyaW5nRW50cnkAAAACAgAAAA9FbHNlT2JyaWdhdG9yaW8CAAAAF1RvZG9zIG9zIGVsc2VzIGdyYXZhZG9zCQAETAAAAAIDCQAAAAAAAAIFAAAAAmU3AAAAAAAAAAAJCQEAAAALU3RyaW5nRW50cnkAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAAAdzdGF0dXNfBQAAAAJhMwIAAAAFXzgwMF8FAAAAAmE3AgAAAAAJAQAAAAtTdHJpbmdFbnRyeQAAAAICAAAAD0Vsc2VPYnJpZ2F0b3JpbwIAAAAXVG9kb3Mgb3MgZWxzZXMgZ3JhdmFkb3MJAARMAAAAAgMJAAAAAAAAAgUAAAACZTcAAAAAAAAAAAkJAQAAAAtTdHJpbmdFbnRyeQAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAICAAAAB3N0YXR1c18FAAAAAmEzAgAAAAVfOTAwXwUAAAACYTcCAAAAAAkBAAAAC1N0cmluZ0VudHJ5AAAAAgIAAAAPRWxzZU9icmlnYXRvcmlvAgAAABdUb2RvcyBvcyBlbHNlcyBncmF2YWRvcwkABEwAAAACAwkAAAAAAAACBQAAAAJlNwAAAAAAAAAACQkBAAAAC1N0cmluZ0VudHJ5AAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAHc3RhdHVzXwUAAAACYTMCAAAABl8xMDAwXwUAAAACYTcCAAAAAAkBAAAAC1N0cmluZ0VudHJ5AAAAAgIAAAAPRWxzZU9icmlnYXRvcmlvAgAAABdUb2RvcyBvcyBlbHNlcyBncmF2YWRvcwkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACAgAAAA9iYWxhbmNlX3Jld2FyZF8FAAAAAmc0BQAAAAJoMQkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAICAAAACGhpc3RvcnlfBQAAAAJhNwIAAAABXwUAAAACYzMCAAAAAV8FAAAAAmE0AgAAAAFfCQABpAAAAAEFAAAAAmgzCQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAICAAAAEHsiaGlzdG9yaWNJZCI6ICIJAAGkAAAAAQUAAAACaDMCAAAAFSIsICJ0cmFuc2FjdGlvbklkIjogIgUAAAACYTQCAAAAFCIsICJwbGF5ZXJBdHRhY2siOiAiBQAAAAJhNwIAAAAYIiwgInBsYXllckluVGhlQXJlbmEiOiAiBQAAAAJjMwIAAAAQIiwgInVzZWRDYXJkIjogIgUAAAACYTgCAAAAFiIsICJjYXJkSW5UaGVBcmVuYSI6ICIFAAAAAmM2AgAAABYiLCAiYXJlbmFDYXJkU2NvcmUiOiAiCQABpAAAAAEFAAAAAmM3AgAAAA4iLCAid2lubmVyIjogIgUAAAACZzQCAAAAEyIsICJ3aW5uaW5nQ2FyZCI6ICIFAAAAAmc2AgAAABAiLCAiZGVmZWF0ZWQiOiAiBQAAAAJnNQIAAAAUIiwgImRlZmVhdGVkQ2FyZCI6ICIFAAAAAmc3AgAAACQiLCAicG9pbnRzUmVtYWluaW5nT25XaW5uaW5nQ2FyZCI6ICIJAAGkAAAAAQUAAAACZzgCAAAAESIsICJ3aW5SZXdhcmQiOiAiCQABpAAAAAEFAAAAAmc5AgAAABQiLCAiZGVmZWF0UmV3YXJkIjogIgkAAaQAAAABBQAAAAJoMgIAAAACIn0JAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgkAASwAAAACAgAAAAdzdGF0dXNfBQAAAAJhOQIAAAAEVXNlZAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgIAAAAKaGlzdG9yaWNJZAUAAAACaDMFAAAAA25pbAAAAAD9c9an", "height": 1654357, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 2BAXbGdusgB8mbzauhAhpRt3HuUCMMdpyjAPgkgYtoAk Next: Y9qUuDb96d7XgQdbShUT8N4xDiX7WuoXWRxfyPhvtLG Diff:
OldNewDifferences
145145 } == "Used"))
146146 then 1
147147 else 0
148+ let verifyCards = match getBoolean(this, ("buy_cards_vol01_" + currentKeyBytes)) {
149+ case t: Boolean =>
150+ t
151+ case _ =>
152+ false
153+ }
148154 let tokenBalance = match getInteger(this, ("token_balance_" + currentKeyBytes)) {
149155 case t: Int =>
150156 t
156162 func foldFunc (acc,e) = (acc + e)
157163
158164 let resultVerifyStatusCards = {
159- let $list51495183 = statusCards
160- let $size51495183 = size($list51495183)
161- let $acc051495183 = 0
162- if (($size51495183 == 0))
163- then $acc051495183
165+ let $list53295363 = statusCards
166+ let $size53295363 = size($list53295363)
167+ let $acc053295363 = 0
168+ if (($size53295363 == 0))
169+ then $acc053295363
164170 else {
165- let $acc151495183 = foldFunc($acc051495183, $list51495183[0])
166- if (($size51495183 == 1))
167- then $acc151495183
171+ let $acc153295363 = foldFunc($acc053295363, $list53295363[0])
172+ if (($size53295363 == 1))
173+ then $acc153295363
168174 else {
169- let $acc251495183 = foldFunc($acc151495183, $list51495183[1])
170- if (($size51495183 == 2))
171- then $acc251495183
175+ let $acc253295363 = foldFunc($acc153295363, $list53295363[1])
176+ if (($size53295363 == 2))
177+ then $acc253295363
172178 else {
173- let $acc351495183 = foldFunc($acc251495183, $list51495183[2])
174- if (($size51495183 == 3))
175- then $acc351495183
179+ let $acc353295363 = foldFunc($acc253295363, $list53295363[2])
180+ if (($size53295363 == 3))
181+ then $acc353295363
176182 else {
177- let $acc451495183 = foldFunc($acc351495183, $list51495183[3])
178- if (($size51495183 == 4))
179- then $acc451495183
183+ let $acc453295363 = foldFunc($acc353295363, $list53295363[3])
184+ if (($size53295363 == 4))
185+ then $acc453295363
180186 else {
181- let $acc551495183 = foldFunc($acc451495183, $list51495183[4])
182- if (($size51495183 == 5))
183- then $acc551495183
187+ let $acc553295363 = foldFunc($acc453295363, $list53295363[4])
188+ if (($size53295363 == 5))
189+ then $acc553295363
184190 else {
185- let $acc651495183 = foldFunc($acc551495183, $list51495183[5])
186- if (($size51495183 == 6))
187- then $acc651495183
191+ let $acc653295363 = foldFunc($acc553295363, $list53295363[5])
192+ if (($size53295363 == 6))
193+ then $acc653295363
188194 else {
189- let $acc751495183 = foldFunc($acc651495183, $list51495183[6])
190- if (($size51495183 == 7))
191- then $acc751495183
195+ let $acc753295363 = foldFunc($acc653295363, $list53295363[6])
196+ if (($size53295363 == 7))
197+ then $acc753295363
192198 else {
193- let $acc851495183 = foldFunc($acc751495183, $list51495183[7])
194- if (($size51495183 == 8))
195- then $acc851495183
199+ let $acc853295363 = foldFunc($acc753295363, $list53295363[7])
200+ if (($size53295363 == 8))
201+ then $acc853295363
196202 else {
197- let $acc951495183 = foldFunc($acc851495183, $list51495183[8])
198- if (($size51495183 == 9))
199- then $acc951495183
203+ let $acc953295363 = foldFunc($acc853295363, $list53295363[8])
204+ if (($size53295363 == 9))
205+ then $acc953295363
200206 else {
201- let $acc1051495183 = foldFunc($acc951495183, $list51495183[9])
202- if (($size51495183 == 10))
203- then $acc1051495183
207+ let $acc1053295363 = foldFunc($acc953295363, $list53295363[9])
208+ if (($size53295363 == 10))
209+ then $acc1053295363
204210 else {
205- let $acc1151495183 = foldFunc($acc1051495183, $list51495183[10])
211+ let $acc1153295363 = foldFunc($acc1053295363, $list53295363[10])
206212 throw("List size exceed 10")
207213 }
208214 }
218224 }
219225 if ((class == "Tokens Oracle Arena"))
220226 then [IntegerEntry(((("token_balance_" + currentKeyBytes) + "_") + transactionId), newTokenPurchase)]
221- else if (if ((card == "Buy Cards"))
227+ else if (if (if ((card == "Buy Cards"))
222228 then (payAmount == 100000000)
223229 else false)
224- then [ScriptTransfer(currentKey, 10, cardsOracle)]
225- else if (if (!(containsElement(classGame, class)))
226- then true
227- else !(containsElement(cardsGame, cardName)))
228- then throw("The card sent does not exist in the game! Please check your cards!")
229- else if ((payAmount != 10000000))
230- then throw("Each move has a fixed value of 1 token.")
231- else if ((0 >= assetBalance(currentKey, cardsOracle)))
232- then throw("You must have the cards in your wallet! Get it on the marketplace!")
233- else if (if ((cardInTheArena == ""))
234- then true
235- else (playerInTheArena == ""))
236- then [StringEntry("playerInTheArena", currentKeyBytes), StringEntry("cardInTheArena", cardName), IntegerEntry("arenaCardScore", currentCardScore), StringEntry(("status_" + cardNameCurrentPlayer), "Used")]
237- else if ((currentCardStatus == "Used"))
238- then throw("This card has already been used! Use all the cards in the deck to unlock it again!")
239- else {
240- let winner = if ((currentCardScore > arenaCardScore))
241- then currentKeyBytes
242- else playerInTheArena
243- let defeated = if ((arenaCardScore > currentCardScore))
244- then currentKeyBytes
245- else if ((currentCardScore > arenaCardScore))
246- then playerInTheArena
247- else currentKeyBytes
248- let winningCard = if ((currentCardScore > arenaCardScore))
249- then cardName
250- else cardInTheArena
251- let defeatedCard = if ((arenaCardScore > currentCardScore))
252- then cardName
253- else if ((currentCardScore > arenaCardScore))
254- then cardInTheArena
255- else currentKeyBytes
256- let pointsRemainingOnWinningCard = if ((currentCardScore > arenaCardScore))
257- then (currentCardScore - arenaCardScore)
258- else (arenaCardScore - currentCardScore)
259- let winReward = if ((currentCardScore > arenaCardScore))
260- then payAmount
261- else (payAmount / 2)
262- let rewardValue = if ((winner == currentKeyBytes))
263- then (winReward + currentPlayerBalance)
264- else if ((winner == playerInTheArena))
265- then (winReward + arenaPlayerBalance)
266- else throw("Código 010105. Contate o suporte!")
267- let defeatReward = 0
268- let newHistoricId = (historicId + 1)
230+ then !(verifyCards)
231+ else false)
232+ then [BooleanEntry(("buy_cards_vol01_" + currentKeyBytes), true)]
233+ else if (if (if ((card == "Buy Cards"))
234+ then (payAmount == 100000000)
235+ else false)
236+ then !(verifyCards)
237+ else false)
238+ then throw("You have already purchased this item on the marketplace.")
239+ else if (if (!(containsElement(classGame, class)))
240+ then true
241+ else !(containsElement(cardsGame, cardName)))
242+ then throw("The card sent does not exist in the game! Please check your cards!")
243+ else if ((payAmount != 10000000))
244+ then throw("Each move has a fixed value of 1 token.")
245+ else if ((0 >= assetBalance(currentKey, cardsOracle)))
246+ then throw("You must have the cards in your wallet! Get it on the marketplace!")
247+ else if (if ((cardInTheArena == ""))
248+ then true
249+ else (playerInTheArena == ""))
250+ then [StringEntry("playerInTheArena", currentKeyBytes), StringEntry("cardInTheArena", cardName), IntegerEntry("arenaCardScore", currentCardScore), StringEntry(("status_" + cardNameCurrentPlayer), "Used")]
251+ else if ((currentCardStatus == "Used"))
252+ then throw("This card has already been used! Use all the cards in the deck to unlock it again!")
253+ else {
254+ let winner = if ((currentCardScore > arenaCardScore))
255+ then currentKeyBytes
256+ else playerInTheArena
257+ let defeated = if ((arenaCardScore > currentCardScore))
258+ then currentKeyBytes
259+ else if ((currentCardScore > arenaCardScore))
260+ then playerInTheArena
261+ else currentKeyBytes
262+ let winningCard = if ((currentCardScore > arenaCardScore))
263+ then cardName
264+ else cardInTheArena
265+ let defeatedCard = if ((arenaCardScore > currentCardScore))
266+ then cardName
267+ else if ((currentCardScore > arenaCardScore))
268+ then cardInTheArena
269+ else currentKeyBytes
270+ let pointsRemainingOnWinningCard = if ((currentCardScore > arenaCardScore))
271+ then (currentCardScore - arenaCardScore)
272+ else (arenaCardScore - currentCardScore)
273+ let winReward = if ((currentCardScore > arenaCardScore))
274+ then payAmount
275+ else (payAmount / 2)
276+ let rewardValue = if ((winner == currentKeyBytes))
277+ then (winReward + currentPlayerBalance)
278+ else if ((winner == playerInTheArena))
279+ then (winReward + arenaPlayerBalance)
280+ else throw("Código 010105. Contate o suporte!")
281+ let defeatReward = 0
282+ let newHistoricId = (historicId + 1)
269283 [StringEntry("playerInTheArena", winner), StringEntry("cardInTheArena", winningCard), IntegerEntry("arenaCardScore", pointsRemainingOnWinningCard), if ((resultVerifyStatusCards == 9))
270- then StringEntry(((("status_" + class) + "_100_") + currentKeyBytes), "")
271- else StringEntry("ElseObrigatorio", "Todos os elses gravados"), if ((resultVerifyStatusCards == 9))
272- then StringEntry(((("status_" + class) + "_200_") + currentKeyBytes), "")
273- else StringEntry("ElseObrigatorio", "Todos os elses gravados"), if ((resultVerifyStatusCards == 9))
274- then StringEntry(((("status_" + class) + "_300_") + currentKeyBytes), "")
275- else StringEntry("ElseObrigatorio", "Todos os elses gravados"), if ((resultVerifyStatusCards == 9))
276- then StringEntry(((("status_" + class) + "_400_") + currentKeyBytes), "")
277- else StringEntry("ElseObrigatorio", "Todos os elses gravados"), if ((resultVerifyStatusCards == 9))
278- then StringEntry(((("status_" + class) + "_500_") + currentKeyBytes), "")
279- else StringEntry("ElseObrigatorio", "Todos os elses gravados"), if ((resultVerifyStatusCards == 9))
280- then StringEntry(((("status_" + class) + "_600_") + currentKeyBytes), "")
281- else StringEntry("ElseObrigatorio", "Todos os elses gravados"), if ((resultVerifyStatusCards == 9))
282- then StringEntry(((("status_" + class) + "_700_") + currentKeyBytes), "")
283- else StringEntry("ElseObrigatorio", "Todos os elses gravados"), if ((resultVerifyStatusCards == 9))
284- then StringEntry(((("status_" + class) + "_800_") + currentKeyBytes), "")
285- else StringEntry("ElseObrigatorio", "Todos os elses gravados"), if ((resultVerifyStatusCards == 9))
286- then StringEntry(((("status_" + class) + "_900_") + currentKeyBytes), "")
287- else StringEntry("ElseObrigatorio", "Todos os elses gravados"), if ((resultVerifyStatusCards == 9))
288- then StringEntry(((("status_" + class) + "_1000_") + currentKeyBytes), "")
289- else StringEntry("ElseObrigatorio", "Todos os elses gravados"), IntegerEntry(("balance_reward_" + winner), rewardValue), StringEntry(((((((("history_" + currentKeyBytes) + "_") + playerInTheArena) + "_") + transactionId) + "_") + toString(newHistoricId)), (((((((((((((((((((((((((((("{\"historicId\": \"" + toString(newHistoricId)) + "\", \"transactionId\": \"") + transactionId) + "\", \"playerAttack\": \"") + currentKeyBytes) + "\", \"playerInTheArena\": \"") + playerInTheArena) + "\", \"usedCard\": \"") + cardName) + "\", \"cardInTheArena\": \"") + cardInTheArena) + "\", \"arenaCardScore\": \"") + toString(arenaCardScore)) + "\", \"winner\": \"") + winner) + "\", \"winningCard\": \"") + winningCard) + "\", \"defeated\": \"") + defeated) + "\", \"defeatedCard\": \"") + defeatedCard) + "\", \"pointsRemainingOnWinningCard\": \"") + toString(pointsRemainingOnWinningCard)) + "\", \"winReward\": \"") + toString(winReward)) + "\", \"defeatReward\": \"") + toString(defeatReward)) + "\"}")), StringEntry(("status_" + cardNameCurrentPlayer), "Used"), IntegerEntry("historicId", newHistoricId)]
290- }
284+ then StringEntry(((("status_" + class) + "_100_") + currentKeyBytes), "")
285+ else StringEntry("ElseObrigatorio", "Todos os elses gravados"), if ((resultVerifyStatusCards == 9))
286+ then StringEntry(((("status_" + class) + "_200_") + currentKeyBytes), "")
287+ else StringEntry("ElseObrigatorio", "Todos os elses gravados"), if ((resultVerifyStatusCards == 9))
288+ then StringEntry(((("status_" + class) + "_300_") + currentKeyBytes), "")
289+ else StringEntry("ElseObrigatorio", "Todos os elses gravados"), if ((resultVerifyStatusCards == 9))
290+ then StringEntry(((("status_" + class) + "_400_") + currentKeyBytes), "")
291+ else StringEntry("ElseObrigatorio", "Todos os elses gravados"), if ((resultVerifyStatusCards == 9))
292+ then StringEntry(((("status_" + class) + "_500_") + currentKeyBytes), "")
293+ else StringEntry("ElseObrigatorio", "Todos os elses gravados"), if ((resultVerifyStatusCards == 9))
294+ then StringEntry(((("status_" + class) + "_600_") + currentKeyBytes), "")
295+ else StringEntry("ElseObrigatorio", "Todos os elses gravados"), if ((resultVerifyStatusCards == 9))
296+ then StringEntry(((("status_" + class) + "_700_") + currentKeyBytes), "")
297+ else StringEntry("ElseObrigatorio", "Todos os elses gravados"), if ((resultVerifyStatusCards == 9))
298+ then StringEntry(((("status_" + class) + "_800_") + currentKeyBytes), "")
299+ else StringEntry("ElseObrigatorio", "Todos os elses gravados"), if ((resultVerifyStatusCards == 9))
300+ then StringEntry(((("status_" + class) + "_900_") + currentKeyBytes), "")
301+ else StringEntry("ElseObrigatorio", "Todos os elses gravados"), if ((resultVerifyStatusCards == 9))
302+ then StringEntry(((("status_" + class) + "_1000_") + currentKeyBytes), "")
303+ else StringEntry("ElseObrigatorio", "Todos os elses gravados"), IntegerEntry(("balance_reward_" + winner), rewardValue), StringEntry(((((((("history_" + currentKeyBytes) + "_") + playerInTheArena) + "_") + transactionId) + "_") + toString(newHistoricId)), (((((((((((((((((((((((((((("{\"historicId\": \"" + toString(newHistoricId)) + "\", \"transactionId\": \"") + transactionId) + "\", \"playerAttack\": \"") + currentKeyBytes) + "\", \"playerInTheArena\": \"") + playerInTheArena) + "\", \"usedCard\": \"") + cardName) + "\", \"cardInTheArena\": \"") + cardInTheArena) + "\", \"arenaCardScore\": \"") + toString(arenaCardScore)) + "\", \"winner\": \"") + winner) + "\", \"winningCard\": \"") + winningCard) + "\", \"defeated\": \"") + defeated) + "\", \"defeatedCard\": \"") + defeatedCard) + "\", \"pointsRemainingOnWinningCard\": \"") + toString(pointsRemainingOnWinningCard)) + "\", \"winReward\": \"") + toString(winReward)) + "\", \"defeatReward\": \"") + toString(defeatReward)) + "\"}")), StringEntry(("status_" + cardNameCurrentPlayer), "Used"), IntegerEntry("historicId", newHistoricId)]
304+ }
291305 }
292306
293307
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44
55
66 @Callable(inv)
77 func play (card,class) = {
88 let transactionId = toBase58String(inv.transactionId)
99 let currentKey = inv.caller
1010 let payAmount = value(inv.payments[0].amount)
1111 let currentKeyBytes = toBase58String(inv.caller.bytes)
1212 let cardName = ((class + "_") + card)
1313 let cardNameCurrentPlayer = ((((class + "_") + card) + "_") + currentKeyBytes)
1414 let cardsOracle = base58'CRsDX3VXierYph4hHHpVTUz7DAMPioK633YNjrdCHPef'
1515 let cardsGame = ["Card_100", "Card_200", "Card_300", "Card_400", "Card_500", "Card_600", "Card_700", "Card_800", "Card_900", "Card_1000"]
1616 let classGame = ["Card"]
1717 let assetsGame = ["CRsDX3VXierYph4hHHpVTUz7DAMPioK633YNjrdCHPef"]
1818 let historicId = match getInteger(this, "historicId") {
1919 case t: Int =>
2020 t
2121 case _ =>
2222 0
2323 }
2424 let currentCardStatus = match getString(this, ("status_" + cardNameCurrentPlayer)) {
2525 case t: String =>
2626 t
2727 case _ =>
2828 ""
2929 }
3030 let currentCardScore = match getInteger(this, cardName) {
3131 case t: Int =>
3232 t
3333 case _ =>
3434 0
3535 }
3636 let currentKeyPlayerBalance = ("balance_reward_" + currentKeyBytes)
3737 let currentPlayerBalance = match getInteger(this, currentKeyPlayerBalance) {
3838 case t: Int =>
3939 t
4040 case _ =>
4141 0
4242 }
4343 let playerInTheArena = match getString(this, "playerInTheArena") {
4444 case t: String =>
4545 t
4646 case _ =>
4747 ""
4848 }
4949 let arenaKeyPlayerBalance = ("balance_reward_" + playerInTheArena)
5050 let arenaPlayerBalance = match getInteger(this, arenaKeyPlayerBalance) {
5151 case t: Int =>
5252 t
5353 case _ =>
5454 0
5555 }
5656 let cardInTheArena = match getString(this, "cardInTheArena") {
5757 case t: String =>
5858 t
5959 case _ =>
6060 ""
6161 }
6262 let arenaCardScore = match getInteger(this, "arenaCardScore") {
6363 case t: Int =>
6464 t
6565 case _ =>
6666 0
6767 }
6868 let statusCard1 = if (( match getString(this, ((("status_" + class) + "_100_") + currentKeyBytes)) {
6969 case t: String =>
7070 t
7171 case _ =>
7272 ""
7373 } == "Used"))
7474 then 1
7575 else 0
7676 let statusCard2 = if (( match getString(this, ((("status_" + class) + "_200_") + currentKeyBytes)) {
7777 case t: String =>
7878 t
7979 case _ =>
8080 ""
8181 } == "Used"))
8282 then 1
8383 else 0
8484 let statusCard3 = if (( match getString(this, ((("status_" + class) + "_300_") + currentKeyBytes)) {
8585 case t: String =>
8686 t
8787 case _ =>
8888 ""
8989 } == "Used"))
9090 then 1
9191 else 0
9292 let statusCard4 = if (( match getString(this, ((("status_" + class) + "_400_") + currentKeyBytes)) {
9393 case t: String =>
9494 t
9595 case _ =>
9696 ""
9797 } == "Used"))
9898 then 1
9999 else 0
100100 let statusCard5 = if (( match getString(this, ((("status_" + class) + "_500_") + currentKeyBytes)) {
101101 case t: String =>
102102 t
103103 case _ =>
104104 ""
105105 } == "Used"))
106106 then 1
107107 else 0
108108 let statusCard6 = if (( match getString(this, ((("status_" + class) + "_600_") + currentKeyBytes)) {
109109 case t: String =>
110110 t
111111 case _ =>
112112 ""
113113 } == "Used"))
114114 then 1
115115 else 0
116116 let statusCard7 = if (( match getString(this, ((("status_" + class) + "_700_") + currentKeyBytes)) {
117117 case t: String =>
118118 t
119119 case _ =>
120120 ""
121121 } == "Used"))
122122 then 1
123123 else 0
124124 let statusCard8 = if (( match getString(this, ((("status_" + class) + "_800_") + currentKeyBytes)) {
125125 case t: String =>
126126 t
127127 case _ =>
128128 ""
129129 } == "Used"))
130130 then 1
131131 else 0
132132 let statusCard9 = if (( match getString(this, ((("status_" + class) + "_900_") + currentKeyBytes)) {
133133 case t: String =>
134134 t
135135 case _ =>
136136 ""
137137 } == "Used"))
138138 then 1
139139 else 0
140140 let statusCard10 = if (( match getString(this, ((("status_" + class) + "_1000_") + currentKeyBytes)) {
141141 case t: String =>
142142 t
143143 case _ =>
144144 ""
145145 } == "Used"))
146146 then 1
147147 else 0
148+ let verifyCards = match getBoolean(this, ("buy_cards_vol01_" + currentKeyBytes)) {
149+ case t: Boolean =>
150+ t
151+ case _ =>
152+ false
153+ }
148154 let tokenBalance = match getInteger(this, ("token_balance_" + currentKeyBytes)) {
149155 case t: Int =>
150156 t
151157 case _ =>
152158 0
153159 }
154160 let newTokenPurchase = (inv.payments[0].amount * 10000)
155161 let statusCards = [statusCard1, statusCard2, statusCard3, statusCard4, statusCard5, statusCard6, statusCard7, statusCard8, statusCard9, statusCard10]
156162 func foldFunc (acc,e) = (acc + e)
157163
158164 let resultVerifyStatusCards = {
159- let $list51495183 = statusCards
160- let $size51495183 = size($list51495183)
161- let $acc051495183 = 0
162- if (($size51495183 == 0))
163- then $acc051495183
165+ let $list53295363 = statusCards
166+ let $size53295363 = size($list53295363)
167+ let $acc053295363 = 0
168+ if (($size53295363 == 0))
169+ then $acc053295363
164170 else {
165- let $acc151495183 = foldFunc($acc051495183, $list51495183[0])
166- if (($size51495183 == 1))
167- then $acc151495183
171+ let $acc153295363 = foldFunc($acc053295363, $list53295363[0])
172+ if (($size53295363 == 1))
173+ then $acc153295363
168174 else {
169- let $acc251495183 = foldFunc($acc151495183, $list51495183[1])
170- if (($size51495183 == 2))
171- then $acc251495183
175+ let $acc253295363 = foldFunc($acc153295363, $list53295363[1])
176+ if (($size53295363 == 2))
177+ then $acc253295363
172178 else {
173- let $acc351495183 = foldFunc($acc251495183, $list51495183[2])
174- if (($size51495183 == 3))
175- then $acc351495183
179+ let $acc353295363 = foldFunc($acc253295363, $list53295363[2])
180+ if (($size53295363 == 3))
181+ then $acc353295363
176182 else {
177- let $acc451495183 = foldFunc($acc351495183, $list51495183[3])
178- if (($size51495183 == 4))
179- then $acc451495183
183+ let $acc453295363 = foldFunc($acc353295363, $list53295363[3])
184+ if (($size53295363 == 4))
185+ then $acc453295363
180186 else {
181- let $acc551495183 = foldFunc($acc451495183, $list51495183[4])
182- if (($size51495183 == 5))
183- then $acc551495183
187+ let $acc553295363 = foldFunc($acc453295363, $list53295363[4])
188+ if (($size53295363 == 5))
189+ then $acc553295363
184190 else {
185- let $acc651495183 = foldFunc($acc551495183, $list51495183[5])
186- if (($size51495183 == 6))
187- then $acc651495183
191+ let $acc653295363 = foldFunc($acc553295363, $list53295363[5])
192+ if (($size53295363 == 6))
193+ then $acc653295363
188194 else {
189- let $acc751495183 = foldFunc($acc651495183, $list51495183[6])
190- if (($size51495183 == 7))
191- then $acc751495183
195+ let $acc753295363 = foldFunc($acc653295363, $list53295363[6])
196+ if (($size53295363 == 7))
197+ then $acc753295363
192198 else {
193- let $acc851495183 = foldFunc($acc751495183, $list51495183[7])
194- if (($size51495183 == 8))
195- then $acc851495183
199+ let $acc853295363 = foldFunc($acc753295363, $list53295363[7])
200+ if (($size53295363 == 8))
201+ then $acc853295363
196202 else {
197- let $acc951495183 = foldFunc($acc851495183, $list51495183[8])
198- if (($size51495183 == 9))
199- then $acc951495183
203+ let $acc953295363 = foldFunc($acc853295363, $list53295363[8])
204+ if (($size53295363 == 9))
205+ then $acc953295363
200206 else {
201- let $acc1051495183 = foldFunc($acc951495183, $list51495183[9])
202- if (($size51495183 == 10))
203- then $acc1051495183
207+ let $acc1053295363 = foldFunc($acc953295363, $list53295363[9])
208+ if (($size53295363 == 10))
209+ then $acc1053295363
204210 else {
205- let $acc1151495183 = foldFunc($acc1051495183, $list51495183[10])
211+ let $acc1153295363 = foldFunc($acc1053295363, $list53295363[10])
206212 throw("List size exceed 10")
207213 }
208214 }
209215 }
210216 }
211217 }
212218 }
213219 }
214220 }
215221 }
216222 }
217223 }
218224 }
219225 if ((class == "Tokens Oracle Arena"))
220226 then [IntegerEntry(((("token_balance_" + currentKeyBytes) + "_") + transactionId), newTokenPurchase)]
221- else if (if ((card == "Buy Cards"))
227+ else if (if (if ((card == "Buy Cards"))
222228 then (payAmount == 100000000)
223229 else false)
224- then [ScriptTransfer(currentKey, 10, cardsOracle)]
225- else if (if (!(containsElement(classGame, class)))
226- then true
227- else !(containsElement(cardsGame, cardName)))
228- then throw("The card sent does not exist in the game! Please check your cards!")
229- else if ((payAmount != 10000000))
230- then throw("Each move has a fixed value of 1 token.")
231- else if ((0 >= assetBalance(currentKey, cardsOracle)))
232- then throw("You must have the cards in your wallet! Get it on the marketplace!")
233- else if (if ((cardInTheArena == ""))
234- then true
235- else (playerInTheArena == ""))
236- then [StringEntry("playerInTheArena", currentKeyBytes), StringEntry("cardInTheArena", cardName), IntegerEntry("arenaCardScore", currentCardScore), StringEntry(("status_" + cardNameCurrentPlayer), "Used")]
237- else if ((currentCardStatus == "Used"))
238- then throw("This card has already been used! Use all the cards in the deck to unlock it again!")
239- else {
240- let winner = if ((currentCardScore > arenaCardScore))
241- then currentKeyBytes
242- else playerInTheArena
243- let defeated = if ((arenaCardScore > currentCardScore))
244- then currentKeyBytes
245- else if ((currentCardScore > arenaCardScore))
246- then playerInTheArena
247- else currentKeyBytes
248- let winningCard = if ((currentCardScore > arenaCardScore))
249- then cardName
250- else cardInTheArena
251- let defeatedCard = if ((arenaCardScore > currentCardScore))
252- then cardName
253- else if ((currentCardScore > arenaCardScore))
254- then cardInTheArena
255- else currentKeyBytes
256- let pointsRemainingOnWinningCard = if ((currentCardScore > arenaCardScore))
257- then (currentCardScore - arenaCardScore)
258- else (arenaCardScore - currentCardScore)
259- let winReward = if ((currentCardScore > arenaCardScore))
260- then payAmount
261- else (payAmount / 2)
262- let rewardValue = if ((winner == currentKeyBytes))
263- then (winReward + currentPlayerBalance)
264- else if ((winner == playerInTheArena))
265- then (winReward + arenaPlayerBalance)
266- else throw("Código 010105. Contate o suporte!")
267- let defeatReward = 0
268- let newHistoricId = (historicId + 1)
230+ then !(verifyCards)
231+ else false)
232+ then [BooleanEntry(("buy_cards_vol01_" + currentKeyBytes), true)]
233+ else if (if (if ((card == "Buy Cards"))
234+ then (payAmount == 100000000)
235+ else false)
236+ then !(verifyCards)
237+ else false)
238+ then throw("You have already purchased this item on the marketplace.")
239+ else if (if (!(containsElement(classGame, class)))
240+ then true
241+ else !(containsElement(cardsGame, cardName)))
242+ then throw("The card sent does not exist in the game! Please check your cards!")
243+ else if ((payAmount != 10000000))
244+ then throw("Each move has a fixed value of 1 token.")
245+ else if ((0 >= assetBalance(currentKey, cardsOracle)))
246+ then throw("You must have the cards in your wallet! Get it on the marketplace!")
247+ else if (if ((cardInTheArena == ""))
248+ then true
249+ else (playerInTheArena == ""))
250+ then [StringEntry("playerInTheArena", currentKeyBytes), StringEntry("cardInTheArena", cardName), IntegerEntry("arenaCardScore", currentCardScore), StringEntry(("status_" + cardNameCurrentPlayer), "Used")]
251+ else if ((currentCardStatus == "Used"))
252+ then throw("This card has already been used! Use all the cards in the deck to unlock it again!")
253+ else {
254+ let winner = if ((currentCardScore > arenaCardScore))
255+ then currentKeyBytes
256+ else playerInTheArena
257+ let defeated = if ((arenaCardScore > currentCardScore))
258+ then currentKeyBytes
259+ else if ((currentCardScore > arenaCardScore))
260+ then playerInTheArena
261+ else currentKeyBytes
262+ let winningCard = if ((currentCardScore > arenaCardScore))
263+ then cardName
264+ else cardInTheArena
265+ let defeatedCard = if ((arenaCardScore > currentCardScore))
266+ then cardName
267+ else if ((currentCardScore > arenaCardScore))
268+ then cardInTheArena
269+ else currentKeyBytes
270+ let pointsRemainingOnWinningCard = if ((currentCardScore > arenaCardScore))
271+ then (currentCardScore - arenaCardScore)
272+ else (arenaCardScore - currentCardScore)
273+ let winReward = if ((currentCardScore > arenaCardScore))
274+ then payAmount
275+ else (payAmount / 2)
276+ let rewardValue = if ((winner == currentKeyBytes))
277+ then (winReward + currentPlayerBalance)
278+ else if ((winner == playerInTheArena))
279+ then (winReward + arenaPlayerBalance)
280+ else throw("Código 010105. Contate o suporte!")
281+ let defeatReward = 0
282+ let newHistoricId = (historicId + 1)
269283 [StringEntry("playerInTheArena", winner), StringEntry("cardInTheArena", winningCard), IntegerEntry("arenaCardScore", pointsRemainingOnWinningCard), if ((resultVerifyStatusCards == 9))
270- then StringEntry(((("status_" + class) + "_100_") + currentKeyBytes), "")
271- else StringEntry("ElseObrigatorio", "Todos os elses gravados"), if ((resultVerifyStatusCards == 9))
272- then StringEntry(((("status_" + class) + "_200_") + currentKeyBytes), "")
273- else StringEntry("ElseObrigatorio", "Todos os elses gravados"), if ((resultVerifyStatusCards == 9))
274- then StringEntry(((("status_" + class) + "_300_") + currentKeyBytes), "")
275- else StringEntry("ElseObrigatorio", "Todos os elses gravados"), if ((resultVerifyStatusCards == 9))
276- then StringEntry(((("status_" + class) + "_400_") + currentKeyBytes), "")
277- else StringEntry("ElseObrigatorio", "Todos os elses gravados"), if ((resultVerifyStatusCards == 9))
278- then StringEntry(((("status_" + class) + "_500_") + currentKeyBytes), "")
279- else StringEntry("ElseObrigatorio", "Todos os elses gravados"), if ((resultVerifyStatusCards == 9))
280- then StringEntry(((("status_" + class) + "_600_") + currentKeyBytes), "")
281- else StringEntry("ElseObrigatorio", "Todos os elses gravados"), if ((resultVerifyStatusCards == 9))
282- then StringEntry(((("status_" + class) + "_700_") + currentKeyBytes), "")
283- else StringEntry("ElseObrigatorio", "Todos os elses gravados"), if ((resultVerifyStatusCards == 9))
284- then StringEntry(((("status_" + class) + "_800_") + currentKeyBytes), "")
285- else StringEntry("ElseObrigatorio", "Todos os elses gravados"), if ((resultVerifyStatusCards == 9))
286- then StringEntry(((("status_" + class) + "_900_") + currentKeyBytes), "")
287- else StringEntry("ElseObrigatorio", "Todos os elses gravados"), if ((resultVerifyStatusCards == 9))
288- then StringEntry(((("status_" + class) + "_1000_") + currentKeyBytes), "")
289- else StringEntry("ElseObrigatorio", "Todos os elses gravados"), IntegerEntry(("balance_reward_" + winner), rewardValue), StringEntry(((((((("history_" + currentKeyBytes) + "_") + playerInTheArena) + "_") + transactionId) + "_") + toString(newHistoricId)), (((((((((((((((((((((((((((("{\"historicId\": \"" + toString(newHistoricId)) + "\", \"transactionId\": \"") + transactionId) + "\", \"playerAttack\": \"") + currentKeyBytes) + "\", \"playerInTheArena\": \"") + playerInTheArena) + "\", \"usedCard\": \"") + cardName) + "\", \"cardInTheArena\": \"") + cardInTheArena) + "\", \"arenaCardScore\": \"") + toString(arenaCardScore)) + "\", \"winner\": \"") + winner) + "\", \"winningCard\": \"") + winningCard) + "\", \"defeated\": \"") + defeated) + "\", \"defeatedCard\": \"") + defeatedCard) + "\", \"pointsRemainingOnWinningCard\": \"") + toString(pointsRemainingOnWinningCard)) + "\", \"winReward\": \"") + toString(winReward)) + "\", \"defeatReward\": \"") + toString(defeatReward)) + "\"}")), StringEntry(("status_" + cardNameCurrentPlayer), "Used"), IntegerEntry("historicId", newHistoricId)]
290- }
284+ then StringEntry(((("status_" + class) + "_100_") + currentKeyBytes), "")
285+ else StringEntry("ElseObrigatorio", "Todos os elses gravados"), if ((resultVerifyStatusCards == 9))
286+ then StringEntry(((("status_" + class) + "_200_") + currentKeyBytes), "")
287+ else StringEntry("ElseObrigatorio", "Todos os elses gravados"), if ((resultVerifyStatusCards == 9))
288+ then StringEntry(((("status_" + class) + "_300_") + currentKeyBytes), "")
289+ else StringEntry("ElseObrigatorio", "Todos os elses gravados"), if ((resultVerifyStatusCards == 9))
290+ then StringEntry(((("status_" + class) + "_400_") + currentKeyBytes), "")
291+ else StringEntry("ElseObrigatorio", "Todos os elses gravados"), if ((resultVerifyStatusCards == 9))
292+ then StringEntry(((("status_" + class) + "_500_") + currentKeyBytes), "")
293+ else StringEntry("ElseObrigatorio", "Todos os elses gravados"), if ((resultVerifyStatusCards == 9))
294+ then StringEntry(((("status_" + class) + "_600_") + currentKeyBytes), "")
295+ else StringEntry("ElseObrigatorio", "Todos os elses gravados"), if ((resultVerifyStatusCards == 9))
296+ then StringEntry(((("status_" + class) + "_700_") + currentKeyBytes), "")
297+ else StringEntry("ElseObrigatorio", "Todos os elses gravados"), if ((resultVerifyStatusCards == 9))
298+ then StringEntry(((("status_" + class) + "_800_") + currentKeyBytes), "")
299+ else StringEntry("ElseObrigatorio", "Todos os elses gravados"), if ((resultVerifyStatusCards == 9))
300+ then StringEntry(((("status_" + class) + "_900_") + currentKeyBytes), "")
301+ else StringEntry("ElseObrigatorio", "Todos os elses gravados"), if ((resultVerifyStatusCards == 9))
302+ then StringEntry(((("status_" + class) + "_1000_") + currentKeyBytes), "")
303+ else StringEntry("ElseObrigatorio", "Todos os elses gravados"), IntegerEntry(("balance_reward_" + winner), rewardValue), StringEntry(((((((("history_" + currentKeyBytes) + "_") + playerInTheArena) + "_") + transactionId) + "_") + toString(newHistoricId)), (((((((((((((((((((((((((((("{\"historicId\": \"" + toString(newHistoricId)) + "\", \"transactionId\": \"") + transactionId) + "\", \"playerAttack\": \"") + currentKeyBytes) + "\", \"playerInTheArena\": \"") + playerInTheArena) + "\", \"usedCard\": \"") + cardName) + "\", \"cardInTheArena\": \"") + cardInTheArena) + "\", \"arenaCardScore\": \"") + toString(arenaCardScore)) + "\", \"winner\": \"") + winner) + "\", \"winningCard\": \"") + winningCard) + "\", \"defeated\": \"") + defeated) + "\", \"defeatedCard\": \"") + defeatedCard) + "\", \"pointsRemainingOnWinningCard\": \"") + toString(pointsRemainingOnWinningCard)) + "\", \"winReward\": \"") + toString(winReward)) + "\", \"defeatReward\": \"") + toString(defeatReward)) + "\"}")), StringEntry(("status_" + cardNameCurrentPlayer), "Used"), IntegerEntry("historicId", newHistoricId)]
304+ }
291305 }
292306
293307

github/deemru/w8io/169f3d6 
117.20 ms