tx · H2Q7rS6iEnGEbGy9NwnT6Q9xPyYD1hZNAVgyuBezekcZ

3PCoF5ZnsQJKAJJCoSqUcVVqJ2Dm4fvn9ar:  -0.01400000 Waves

2022.02.10 14:26 [2982506] smart account 3PCoF5ZnsQJKAJJCoSqUcVVqJ2Dm4fvn9ar > SELF 0.00000000 Waves

{ "type": 13, "id": "H2Q7rS6iEnGEbGy9NwnT6Q9xPyYD1hZNAVgyuBezekcZ", "fee": 1400000, "feeAssetId": null, "timestamp": 1644492427078, "version": 2, "chainId": 87, "sender": "3PCoF5ZnsQJKAJJCoSqUcVVqJ2Dm4fvn9ar", "senderPublicKey": "2RFPMtHxVSEG1LnET2FGshyhRepA7zJmx6tPwdHeNpJi", "proofs": [ "d5oLxumDeUuoPaf5uzL4QQoXTabik44sDR9mikGJtJmRWegtNUUixPzrZTqqStFEpAAbfuA95tyPXLKbakGfgjB" ], "script": "base64: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RlQJAARCAAAABQIAAAANRFVDSy1NQU5UTEUtMAIAAAAgW0FydGVmYWN0XSBNYW50bGUgTkZUIGZvciBKZWR1Y2sAAAAAAAAAAAEAAAAAAAAAAAAHBAAAAAttYW50bGVOZnRJZAkABDgAAAABBQAAAA5pc3N1ZU1hbnRsZU5GVAQAAAAMa01hbnRsZUxldmVsCQEAAAAQa2V5QXJ0ZWZhY3RMZXZlbAAAAAMFAAAACk1BTlRMRU5BTUUJAAQlAAAAAQgFAAAAAWkAAAAGY2FsbGVyBQAAAAttYW50bGVOZnRJZAQAAAANa01hbnRsZUV4aXN0cwkBAAAAEWtleUFydGVmYWN0RXhpc3RzAAAAAgUAAAAKTUFOVExFTkFNRQUAAAALbWFudGxlTmZ0SWQEAAAADGtNYW50bGVPd25lcgkBAAAAEGtleUFydGVmYWN0T3duZXIAAAACBQAAAApNQU5UTEVOQU1FBQAAAAttYW50bGVOZnRJZAQAAAANa01hbnRsZVN0YXR1cwkBAAAAEWtleUFydGVmYWN0U3RhdHVzAAAAAgUAAAAKTUFOVExFTkFNRQUAAAALbWFudGxlTmZ0SWQEAAAADWtBcnRlZmFjdFR5cGUJAQAAAA9rZXlBcnRlZmFjdFR5cGUAAAABBQAAAAttYW50bGVOZnRJZAQAAAAPa01hbnRsZUludmVzdGVkCQEAAAATa2V5QXJ0ZWZhY3RJbnZlc3RlZAAAAAIFAAAACk1BTlRMRU5BTUUJAAJYAAAAAQUAAAALbWFudGxlTmZ0SWQEAAAAF2tBcnRlZmFjdE93bmVyQW5kU3RhdHVzCQEAAAAZa2V5QXJ0ZWZhY3RPd25lckFuZFN0YXR1cwAAAAMFAAAACk1BTlRMRU5BTUUJAAQlAAAAAQgFAAAAAWkAAAAGY2FsbGVyBQAAAAttYW50bGVOZnRJZAQAAAASa09ubHlBcnRlZmFjdExldmVsCQEAAAAUa2V5T25seUFydGVmYWN0TGV2ZWwAAAABBQAAAAttYW50bGVOZnRJZAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgUAAAAMa01hbnRsZUxldmVsAAAAAAAAAAABCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACBQAAAA9rTWFudGxlSW52ZXN0ZWQFAAAAC01BTlRMRVBSSUNFCQAETAAAAAIJAQAAAAxCb29sZWFuRW50cnkAAAACBQAAAA1rTWFudGxlRXhpc3RzBgkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACBQAAAAxrTWFudGxlT3duZXIJAAQlAAAAAQgFAAAAAWkAAAAGY2FsbGVyCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIFAAAADWtNYW50bGVTdGF0dXMFAAAAClNUQVRVU0ZSRUUJAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgUAAAANa0FydGVmYWN0VHlwZQUAAAAKTUFOVExFTkFNRQkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACBQAAABdrQXJ0ZWZhY3RPd25lckFuZFN0YXR1cwUAAAAKU1RBVFVTRlJFRQkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgUAAAASa09ubHlBcnRlZmFjdExldmVsAAAAAAAAAAABBQAAAANuaWwAAAABaQEAAAANdXBncmFkZU1hbnRsZQAAAAEAAAAKYXJ0ZWZhY3RJZAQAAAARdXBncmFkZVBvaW50UHJpY2UAAAAAAAAPQkAEAAAADGZpcnN0UGF5bWVudAkBAAAABXZhbHVlAAAAAQkAAZEAAAACCAUAAAABaQAAAAhwYXltZW50cwAAAAAAAAAAAAMJAQAAAAIhPQAAAAIIBQAAAAxmaXJzdFBheW1lbnQAAAAHYXNzZXRJZAUAAAAKZWdnQXNzZXRJZAkAAAIAAAABCQABLAAAAAICAAAAPFlvdSBjYW4gYXR0YWNoIG9ubHkgRUdHIHRva2VucyB3aXRoIHRoZSBmb2xsb3dpbmcgYXNzZXQgaWQ6IAkAAlgAAAABBQAAAAplZ2dBc3NldElkAwkAAGYAAAACBQAAABF1cGdyYWRlUG9pbnRQcmljZQgFAAAADGZpcnN0UGF5bWVudAAAAAZhbW91bnQJAAACAAAAAQkAASwAAAACAgAAAClNaW5pbWFsIHBheW1lbnQgZm9yIHVwZ3JhZGluZyBtYW50bGUgaXM6IAkAAaQAAAABBQAAABF1cGdyYWRlUG9pbnRQcmljZQQAAAANa01hbnRsZUV4aXN0cwkBAAAAEWtleUFydGVmYWN0RXhpc3RzAAAAAgUAAAAKTUFOVExFTkFNRQkAAlkAAAABBQAAAAphcnRlZmFjdElkBAAAAAxrTWFudGxlT3duZXIJAQAAABBrZXlBcnRlZmFjdE93bmVyAAAAAgUAAAAKTUFOVExFTkFNRQkAAlkAAAABBQAAAAphcnRlZmFjdElkBAAAAAxtYW50bGVFeGlzdHMJAQAAABFAZXh0ck5hdGl2ZSgxMDU2KQAAAAEFAAAADWtNYW50bGVFeGlzdHMEAAAAC21hbnRsZU93bmVyCQEAAAARQGV4dHJOYXRpdmUoMTA1OCkAAAABBQAAAAxrTWFudGxlT3duZXIDCQEAAAABIQAAAAEFAAAADG1hbnRsZUV4aXN0cwkAAAIAAAABAgAAACVNYW50bGUgd2l0aCBzdWNoIGFuIElEIGRvZXMgbm90IGV4aXN0AwkBAAAAAiE9AAAAAgUAAAALbWFudGxlT3duZXIJAAQlAAAAAQgFAAAAAWkAAAAMb3JpZ2luQ2FsbGVyCQAAAgAAAAECAAAAIVlvdSdyZSBub3QgYW4gb3duZXIgb2YgdGhlIG1hbnRsZQQAAAAPa01hbnRsZUludmVzdGVkCQEAAAATa2V5QXJ0ZWZhY3RJbnZlc3RlZAAAAAIFAAAACk1BTlRMRU5BTUUFAAAACmFydGVmYWN0SWQEAAAAFW1hbnRsZUFscmVhZHlJbnZlc3RlZAkBAAAAEUBleHRyTmF0aXZlKDEwNTUpAAAAAQUAAAAPa01hbnRsZUludmVzdGVkBAAAAAxrTWFudGxlTGV2ZWwJAQAAABBrZXlBcnRlZmFjdExldmVsAAAAAwUAAAAKTUFOVExFTkFNRQkABCUAAAABCAUAAAABaQAAAAxvcmlnaW5DYWxsZXIJAAJZAAAAAQUAAAAKYXJ0ZWZhY3RJZAQAAAASa09ubHlBcnRlZmFjdExldmVsCQEAAAAUa2V5T25seUFydGVmYWN0TGV2ZWwAAAABCQACWQAAAAEFAAAACmFydGVmYWN0SWQEAAAADXRvdGFsSW52ZXN0ZWQJAABkAAAAAgUAAAAVbWFudGxlQWxyZWFkeUludmVzdGVkCAUAAAAMZmlyc3RQYXltZW50AAAABmFtb3VudAQAAAAIbmV3TGV2ZWwJAABpAAAAAgkAAGQAAAACCQAAaAAAAAIAAAAAAAAAAAoJAABsAAAABgUAAAANdG90YWxJbnZlc3RlZAAAAAAAAAAACAAAAAAAAAAABgAAAAAAAAAAAQAAAAAAAAAACAUAAAAGSEFMRlVQAAAAAAAF9eEAAAAAAAAF9eEACQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACBQAAAAxrTWFudGxlTGV2ZWwFAAAACG5ld0xldmVsCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACBQAAAA9rTWFudGxlSW52ZXN0ZWQFAAAADXRvdGFsSW52ZXN0ZWQJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIFAAAAEmtPbmx5QXJ0ZWZhY3RMZXZlbAUAAAAIbmV3TGV2ZWwFAAAAA25pbAAAAAFpAQAAAA1wdXRPbkFydGVmYWN0AAAAAQAAAAphcnRlZmFjdElkBAAAAAxmaXJzdFBheW1lbnQJAQAAAAV2YWx1ZQAAAAEJAAGRAAAAAggFAAAAAWkAAAAIcGF5bWVudHMAAAAAAAAAAAAEAAAAEWF0dGFjaGVkQXNzZXRJbmZvCQEAAAAFdmFsdWUAAAABCQAD7AAAAAEJAQAAAAV2YWx1ZQAAAAEIBQAAAAxmaXJzdFBheW1lbnQAAAAHYXNzZXRJZAMDCQEAAAACIT0AAAACCAgFAAAAEWF0dGFjaGVkQXNzZXRJbmZvAAAABmlzc3VlcgAAAAVieXRlcwUAAAARaW5jdWJhdG9yQ29udHJhY3QJAQAAAAIhPQAAAAIICAUAAAARYXR0YWNoZWRBc3NldEluZm8AAAAGaXNzdWVyAAAABWJ5dGVzBQAAAA9icmVlZGVyQ29udHJhY3QHCQAAAgAAAAECAAAAOVlvdSBjYW4gYXR0YWNoIG9ubHkgRFVDS3MgaXNzdWVkIGJ5IGluY3ViYXRvciBvciBicmVlZGVyIAQAAAANa01hbnRsZUV4aXN0cwkBAAAAEWtleUFydGVmYWN0RXhpc3RzAAAAAgUAAAAKTUFOVExFTkFNRQkAAlkAAAABBQAAAAphcnRlZmFjdElkBAAAAAxrTWFudGxlT3duZXIJAQAAABBrZXlBcnRlZmFjdE93bmVyAAAAAgUAAAAKTUFOVExFTkFNRQkAAlkAAAABBQAAAAphcnRlZmFjdElkBAAAAA1rTWFudGxlU3RhdHVzCQEAAAARa2V5QXJ0ZWZhY3RTdGF0dXMAAAACBQAAAApNQU5UTEVOQU1FCQACWQAAAAEFAAAACmFydGVmYWN0SWQEAAAAF2tBcnRlZmFjdE93bmVyQW5kU3RhdHVzCQEAAAAZa2V5QXJ0ZWZhY3RPd25lckFuZFN0YXR1cwAAAAMFAAAACk1BTlRMRU5BTUUJAAQlAAAAAQgFAAAAAWkAAAAMb3JpZ2luQ2FsbGVyCQACWQAAAAEFAAAACmFydGVmYWN0SWQEAAAACWtEdWNrTG9jawkBAAAAC2tleUR1Y2tMb2NrAAAAAgkABCUAAAABCAUAAAABaQAAAAxvcmlnaW5DYWxsZXIJAAJYAAAAAQkBAAAABXZhbHVlAAAAAQgFAAAADGZpcnN0UGF5bWVudAAAAAdhc3NldElkBAAAAAxtYW50bGVFeGlzdHMJAQAAABFAZXh0ck5hdGl2ZSgxMDU2KQAAAAEFAAAADWtNYW50bGVFeGlzdHMEAAAAC21hbnRsZU93bmVyCQEAAAARQGV4dHJOYXRpdmUoMTA1OCkAAAABBQAAAAxrTWFudGxlT3duZXIEAAAADG1hbnRsZVN0YXR1cwkBAAAAEUBleHRyTmF0aXZlKDEwNTgpAAAAAQUAAAANa01hbnRsZVN0YXR1cwQAAAARa0FydGVmYWN0SWRCeVR5cGUJAQAAABprZXlBcnRlZmFjdElkQnlEdWNrQW5kVHlwZQAAAAIFAAAACk1BTlRMRU5BTUUJAQAAAAV2YWx1ZQAAAAEIBQAAAAxmaXJzdFBheW1lbnQAAAAHYXNzZXRJZAMJAQAAAAEhAAAAAQUAAAAMbWFudGxlRXhpc3RzCQAAAgAAAAECAAAAJU1hbnRsZSB3aXRoIHN1Y2ggYW4gSUQgZG9lcyBub3QgZXhpc3QDCQEAAAACIT0AAAACBQAAAAttYW50bGVPd25lcgkABCUAAAABCAUAAAABaQAAAAxvcmlnaW5DYWxsZXIJAAACAAAAAQIAAAAhWW91J3JlIG5vdCBhbiBvd25lciBvZiB0aGUgbWFudGxlAwkBAAAAAiE9AAAAAgUAAAAMbWFudGxlU3RhdHVzBQAAAApTVEFUVVNGUkVFCQAAAgAAAAECAAAAF01hbnRsZSBpcyBhbHJlYWR5IHVzZWQhBAAAAA5rUHV0T25BcnRlZmFjdAkBAAAAEGtleVB1dE9uQXJ0ZWZhY3QAAAAEBQAAAApNQU5UTEVOQU1FCQAEJQAAAAEIBQAAAAFpAAAADG9yaWdpbkNhbGxlcgkAAlgAAAABCQEAAAAFdmFsdWUAAAABCAUAAAAMZmlyc3RQYXltZW50AAAAB2Fzc2V0SWQJAAJZAAAAAQUAAAAKYXJ0ZWZhY3RJZAkABEwAAAACCQEAAAAMQm9vbGVhbkVudHJ5AAAAAgUAAAAOa1B1dE9uQXJ0ZWZhY3QGCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIFAAAADWtNYW50bGVTdGF0dXMFAAAADlNUQVRVU09DQ1VQSUVECQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIFAAAAF2tBcnRlZmFjdE93bmVyQW5kU3RhdHVzBQAAAA5TVEFUVVNPQ0NVUElFRAkABEwAAAACCQEAAAAMQm9vbGVhbkVudHJ5AAAAAgUAAAAJa0R1Y2tMb2NrBgkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACBQAAABFrQXJ0ZWZhY3RJZEJ5VHlwZQUAAAAKYXJ0ZWZhY3RJZAUAAAADbmlsAAAAAWkBAAAAD3Rha2VPZmZBcnRlZmFjdAAAAAIAAAAGZHVja0lkAAAADGFydGVmYWN0VHlwZQQAAAAYa0FydGVmYWN0SWRCeVR5cGVBbmREdWNrCQEAAAAaa2V5QXJ0ZWZhY3RJZEJ5RHVja0FuZFR5cGUAAAACBQAAAAxhcnRlZmFjdFR5cGUJAAJZAAAAAQUAAAAGZHVja0lkBAAAAAphcnRlZmFjdElkCQEAAAARQGV4dHJOYXRpdmUoMTA1OCkAAAABBQAAABhrQXJ0ZWZhY3RJZEJ5VHlwZUFuZER1Y2sEAAAADWtBcnRlZmFjdFR5cGUJAQAAAA9rZXlBcnRlZmFjdFR5cGUAAAABCQACWQAAAAEFAAAACmFydGVmYWN0SWQEAAAADmtQdXRPbkFydGVmYWN0CQEAAAAQa2V5UHV0T25BcnRlZmFjdAAAAAQFAAAADGFydGVmYWN0VHlwZQkABCUAAAABCAUAAAABaQAAAAxvcmlnaW5DYWxsZXIFAAAABmR1Y2tJZAkAAlkAAAABBQAAAAphcnRlZmFjdElkBAAAABRrUHV0T25BcnRlZmFjdFN0YXR1cwkBAAAAEUBleHRyTmF0aXZlKDEwNTYpAAAAAQUAAAAOa1B1dE9uQXJ0ZWZhY3QEAAAAF2tBcnRlZmFjdE93bmVyQW5kU3RhdHVzCQEAAAAZa2V5QXJ0ZWZhY3RPd25lckFuZFN0YXR1cwAAAAMFAAAADGFydGVmYWN0VHlwZQkABCUAAAABCAUAAAABaQAAAAxvcmlnaW5DYWxsZXIJAAJZAAAAAQUAAAAKYXJ0ZWZhY3RJZAQAAAAJa0R1Y2tMb2NrCQEAAAALa2V5RHVja0xvY2sAAAACCQAEJQAAAAEIBQAAAAFpAAAADG9yaWdpbkNhbGxlcgUAAAAGZHVja0lkBAAAAA1rTWFudGxlU3RhdHVzCQEAAAARa2V5QXJ0ZWZhY3RTdGF0dXMAAAACBQAAAAxhcnRlZmFjdFR5cGUJAAJZAAAAAQUAAAAKYXJ0ZWZhY3RJZAMJAQAAAAIhPQAAAAIFAAAAFGtQdXRPbkFydGVmYWN0U3RhdHVzBgkAAAIAAAABAgAAACZUaGVyZSBpcyBubyBkdWNrIHdpdGggc3VjaCBwYXJhbWV0ZXJlcwkABEwAAAACCQEAAAALRGVsZXRlRW50cnkAAAABBQAAAA5rUHV0T25BcnRlZmFjdAkABEwAAAACCQEAAAALRGVsZXRlRW50cnkAAAABBQAAABhrQXJ0ZWZhY3RJZEJ5VHlwZUFuZER1Y2sJAARMAAAAAgkBAAAAC0RlbGV0ZUVudHJ5AAAAAQUAAAAJa0R1Y2tMb2NrCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIFAAAADWtNYW50bGVTdGF0dXMFAAAAClNUQVRVU0ZSRUUJAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgUAAAAXa0FydGVmYWN0T3duZXJBbmRTdGF0dXMFAAAAClNUQVRVU0ZSRUUJAARMAAAAAgkBAAAADlNjcmlwdFRyYW5zZmVyAAAAAwgFAAAAAWkAAAAMb3JpZ2luQ2FsbGVyAAAAAAAAAAABCQACWQAAAAEFAAAABmR1Y2tJZAUAAAADbmlsAAAAAQAAAAJ0eAEAAAAGdmVyaWZ5AAAAAAkAAfQAAAADCAUAAAACdHgAAAAJYm9keUJ5dGVzCQABkQAAAAIIBQAAAAJ0eAAAAAZwcm9vZnMAAAAAAAAAAAAIBQAAAAJ0eAAAAA9zZW5kZXJQdWJsaWNLZXnHxsb5", "height": 2982506, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 6J9rp6X3TgvKHn1oSkhwEBbnGRVKwCCijuGbxHeA1CUi Next: 93t3HhtrrPLysMb1jTYMAC3SAu7XYaiFfjgrXxwWV9eE Diff:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
4-let breederContract = base58'3PDVuU45H7Eh5dmtNbnRNRStGwULA7NY6Hb'
4+let breederContract = base58'3P9REuLBnYBafDqtEu6hfzs2Rv2haSU158y'
55
6-let incubatorContract = base58'3PEktVux2RhchSN63DsDo4b4mz4QqzKSeDv'
6+let incubatorContract = base58'3P6TwNU39Ykkbeqhn5TE4a2736xsA1vXemM'
77
8-let eggAssetId = base58'C1iWsKGqLwjHUndiQ7iXpdmPum9PeCDFfyXBdJJosDRS'
8+let eggAssetId = base58'3v7zGkeHS6KrsvmTRzEzvCxm5cdzkCtM7z5cM6efcjCB'
99
1010 let MANTLENAME = "mantle"
1111
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
4-let breederContract = base58'3PDVuU45H7Eh5dmtNbnRNRStGwULA7NY6Hb'
4+let breederContract = base58'3P9REuLBnYBafDqtEu6hfzs2Rv2haSU158y'
55
6-let incubatorContract = base58'3PEktVux2RhchSN63DsDo4b4mz4QqzKSeDv'
6+let incubatorContract = base58'3P6TwNU39Ykkbeqhn5TE4a2736xsA1vXemM'
77
8-let eggAssetId = base58'C1iWsKGqLwjHUndiQ7iXpdmPum9PeCDFfyXBdJJosDRS'
8+let eggAssetId = base58'3v7zGkeHS6KrsvmTRzEzvCxm5cdzkCtM7z5cM6efcjCB'
99
1010 let MANTLENAME = "mantle"
1111
1212 let STATUSFREE = "FREE"
1313
1414 let STATUSOCCUPIED = "OCCUPIED"
1515
1616 func keyDuckLock (callerAddress,duckId) = (((("address_" + callerAddress) + "_duck_") + duckId) + "_status")
1717
1818
1919 func keyInvestor (callerAddress) = (("address_" + callerAddress) + "_amount")
2020
2121
2222 func keyArtefactInvested (type,artefactId) = (((("artefact_" + type) + "_artefactId_") + artefactId) + "_invested")
2323
2424
2525 func keyOnlyArtefactLevel (artefactId) = (("artefactId_" + toBase58String(artefactId)) + "_level")
2626
2727
2828 func keyArtefactIdByDuckAndType (type,duckId) = (((("artefact_ " + type) + "_duck_") + toBase58String(duckId)) + "_artefactId")
2929
3030
3131 func keyArtefactOwner (type,artefactId) = (((("artefact_ " + type) + "_artefactId_") + toBase58String(artefactId)) + "_owner")
3232
3333
3434 func keyArtefactOwnerAndStatus (type,owner,artefactId) = (((((("address_" + owner) + "_artefact_") + type) + "_artefactId_") + toBase58String(artefactId)) + "_status")
3535
3636
3737 func keyArtefactStatus (type,artefactId) = (((("artefact_ " + type) + "_artefactId_") + toBase58String(artefactId)) + "_status")
3838
3939
4040 func keyArtefactType (artefactId) = (("artefactId_" + toBase58String(artefactId)) + "_type")
4141
4242
4343 func keyArtefactLevel (type,owner,artefactId) = (((((("address_" + owner) + "_artefact_") + type) + "_artefactId_") + toBase58String(artefactId)) + "_level")
4444
4545
4646 func keyPutOnArtefact (type,owner,duckId,artefactId) = (((((((("address_" + owner) + "_duck_") + duckId) + "_artefact_") + type) + "_artefactId_") + toBase58String(artefactId)) + "_status")
4747
4848
4949 func keyArtefactExists (type,artefactId) = ((("artefact_" + type) + "_artefactId_") + toBase58String(artefactId))
5050
5151
5252 @Callable(i)
5353 func buyArtefact (type) = if ((type != MANTLENAME))
5454 then throw("You can buy only mantles now")
5555 else {
5656 let MANTLEPRICE = 1000000
5757 let firstPayment = value(i.payments[0])
5858 if ((firstPayment.assetId != eggAssetId))
5959 then throw(("You can attach only EGG tokens with the following asset id: " + toBase58String(eggAssetId)))
6060 else if ((firstPayment.amount != MANTLEPRICE))
6161 then throw(("To buy a mantle you currently need the following amount of EGGlets: " + toString(MANTLEPRICE)))
6262 else {
6363 let issueMantleNFT = Issue("DUCK-MANTLE-0", "[Artefact] Mantle NFT for Jeduck", 1, 0, false)
6464 let mantleNftId = calculateAssetId(issueMantleNFT)
6565 let kMantleLevel = keyArtefactLevel(MANTLENAME, toString(i.caller), mantleNftId)
6666 let kMantleExists = keyArtefactExists(MANTLENAME, mantleNftId)
6767 let kMantleOwner = keyArtefactOwner(MANTLENAME, mantleNftId)
6868 let kMantleStatus = keyArtefactStatus(MANTLENAME, mantleNftId)
6969 let kArtefactType = keyArtefactType(mantleNftId)
7070 let kMantleInvested = keyArtefactInvested(MANTLENAME, toBase58String(mantleNftId))
7171 let kArtefactOwnerAndStatus = keyArtefactOwnerAndStatus(MANTLENAME, toString(i.caller), mantleNftId)
7272 let kOnlyArtefactLevel = keyOnlyArtefactLevel(mantleNftId)
7373 [IntegerEntry(kMantleLevel, 1), IntegerEntry(kMantleInvested, MANTLEPRICE), BooleanEntry(kMantleExists, true), StringEntry(kMantleOwner, toString(i.caller)), StringEntry(kMantleStatus, STATUSFREE), StringEntry(kArtefactType, MANTLENAME), StringEntry(kArtefactOwnerAndStatus, STATUSFREE), IntegerEntry(kOnlyArtefactLevel, 1)]
7474 }
7575 }
7676
7777
7878
7979 @Callable(i)
8080 func upgradeMantle (artefactId) = {
8181 let upgradePointPrice = 1000000
8282 let firstPayment = value(i.payments[0])
8383 if ((firstPayment.assetId != eggAssetId))
8484 then throw(("You can attach only EGG tokens with the following asset id: " + toBase58String(eggAssetId)))
8585 else if ((upgradePointPrice > firstPayment.amount))
8686 then throw(("Minimal payment for upgrading mantle is: " + toString(upgradePointPrice)))
8787 else {
8888 let kMantleExists = keyArtefactExists(MANTLENAME, fromBase58String(artefactId))
8989 let kMantleOwner = keyArtefactOwner(MANTLENAME, fromBase58String(artefactId))
9090 let mantleExists = getBooleanValue(kMantleExists)
9191 let mantleOwner = getStringValue(kMantleOwner)
9292 if (!(mantleExists))
9393 then throw("Mantle with such an ID does not exist")
9494 else if ((mantleOwner != toString(i.originCaller)))
9595 then throw("You're not an owner of the mantle")
9696 else {
9797 let kMantleInvested = keyArtefactInvested(MANTLENAME, artefactId)
9898 let mantleAlreadyInvested = getIntegerValue(kMantleInvested)
9999 let kMantleLevel = keyArtefactLevel(MANTLENAME, toString(i.originCaller), fromBase58String(artefactId))
100100 let kOnlyArtefactLevel = keyOnlyArtefactLevel(fromBase58String(artefactId))
101101 let totalInvested = (mantleAlreadyInvested + firstPayment.amount)
102102 let newLevel = (((10 * pow(totalInvested, 8, 6, 1, 8, HALFUP)) + 100000000) / 100000000)
103103 [IntegerEntry(kMantleLevel, newLevel), IntegerEntry(kMantleInvested, totalInvested), IntegerEntry(kOnlyArtefactLevel, newLevel)]
104104 }
105105 }
106106 }
107107
108108
109109
110110 @Callable(i)
111111 func putOnArtefact (artefactId) = {
112112 let firstPayment = value(i.payments[0])
113113 let attachedAssetInfo = value(assetInfo(value(firstPayment.assetId)))
114114 if (if ((attachedAssetInfo.issuer.bytes != incubatorContract))
115115 then (attachedAssetInfo.issuer.bytes != breederContract)
116116 else false)
117117 then throw("You can attach only DUCKs issued by incubator or breeder ")
118118 else {
119119 let kMantleExists = keyArtefactExists(MANTLENAME, fromBase58String(artefactId))
120120 let kMantleOwner = keyArtefactOwner(MANTLENAME, fromBase58String(artefactId))
121121 let kMantleStatus = keyArtefactStatus(MANTLENAME, fromBase58String(artefactId))
122122 let kArtefactOwnerAndStatus = keyArtefactOwnerAndStatus(MANTLENAME, toString(i.originCaller), fromBase58String(artefactId))
123123 let kDuckLock = keyDuckLock(toString(i.originCaller), toBase58String(value(firstPayment.assetId)))
124124 let mantleExists = getBooleanValue(kMantleExists)
125125 let mantleOwner = getStringValue(kMantleOwner)
126126 let mantleStatus = getStringValue(kMantleStatus)
127127 let kArtefactIdByType = keyArtefactIdByDuckAndType(MANTLENAME, value(firstPayment.assetId))
128128 if (!(mantleExists))
129129 then throw("Mantle with such an ID does not exist")
130130 else if ((mantleOwner != toString(i.originCaller)))
131131 then throw("You're not an owner of the mantle")
132132 else if ((mantleStatus != STATUSFREE))
133133 then throw("Mantle is already used!")
134134 else {
135135 let kPutOnArtefact = keyPutOnArtefact(MANTLENAME, toString(i.originCaller), toBase58String(value(firstPayment.assetId)), fromBase58String(artefactId))
136136 [BooleanEntry(kPutOnArtefact, true), StringEntry(kMantleStatus, STATUSOCCUPIED), StringEntry(kArtefactOwnerAndStatus, STATUSOCCUPIED), BooleanEntry(kDuckLock, true), StringEntry(kArtefactIdByType, artefactId)]
137137 }
138138 }
139139 }
140140
141141
142142
143143 @Callable(i)
144144 func takeOffArtefact (duckId,artefactType) = {
145145 let kArtefactIdByTypeAndDuck = keyArtefactIdByDuckAndType(artefactType, fromBase58String(duckId))
146146 let artefactId = getStringValue(kArtefactIdByTypeAndDuck)
147147 let kArtefactType = keyArtefactType(fromBase58String(artefactId))
148148 let kPutOnArtefact = keyPutOnArtefact(artefactType, toString(i.originCaller), duckId, fromBase58String(artefactId))
149149 let kPutOnArtefactStatus = getBooleanValue(kPutOnArtefact)
150150 let kArtefactOwnerAndStatus = keyArtefactOwnerAndStatus(artefactType, toString(i.originCaller), fromBase58String(artefactId))
151151 let kDuckLock = keyDuckLock(toString(i.originCaller), duckId)
152152 let kMantleStatus = keyArtefactStatus(artefactType, fromBase58String(artefactId))
153153 if ((kPutOnArtefactStatus != true))
154154 then throw("There is no duck with such parameteres")
155155 else [DeleteEntry(kPutOnArtefact), DeleteEntry(kArtefactIdByTypeAndDuck), DeleteEntry(kDuckLock), StringEntry(kMantleStatus, STATUSFREE), StringEntry(kArtefactOwnerAndStatus, STATUSFREE), ScriptTransfer(i.originCaller, 1, fromBase58String(duckId))]
156156 }
157157
158158
159159 @Verifier(tx)
160160 func verify () = sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
161161

github/deemru/w8io/873ac7e 
197.14 ms