Transaction #2300
Hash | d57769ff904570826b58ff03dbcaf816d3fbf44fe38ee3c47e67ea2be9d7a3b6 |
Status | Success |
Timestamp | 286 days ago - 8/6/2023, 4:57:01 AM UTC+0 |
Block | 2300 |
Stamps Used | 165 |
Burned Fee | 0.00976331 TAU |
From | 225ec10455f8bd8757a8889ec5ac4ca5c68dd3fd49432d901e10a4252790c746 |
Contract Name | submission |
Function Name | submit_contract |
Additional Info
Nonce | 44 |
Processor | e79133b02cd2a84e2ce5d24b2f44433f61f0db7e10acedfc241e94dff06f710a |
Signature | bcddcd1033f013b5f3d8ccd8c169fb393fac71fc8a0aa791b69d2bc6e4ed13c7ea0226325274064b05117e77adf42059fe666b2edfeec5d2fadbb8cd7bc7320c |
Stamps Supplied | 651 |
Stamps per TAU | 169 |
Kwargs
code | random.seed() import currency movement = Hash(default_value=0) winner = Variable() propietario = Variable() jugador = Variable() computadora = Variable() premio = Variable() @construct def seed(): movement['piedra'] = 1 movement['papel'] = 2 movement['tijera'] = 3 jugador.set(movement['piedra']) computadora.set(movement['piedra']) propietario.set(ctx.caller) premio.set(5.0) @export def Jugar(movimiento: int, precio: float): assert movimiento < 4, 'No puedes hacer ese movimiento!' assert precio == 3, 'El precio es 3 TAU' currency.transfer_from(amount=precio, to=propietario.get(), main_account=ctx.caller) jugador.set(movimiento) computadora.set(random.randint(1, 3)) if jugador.get() == computadora.get(): return 'Empate' elif (jugador.get() == movement['piedra'] and computadora.get() == movement['tijera']) or (jugador.get() == movement['papel'] and computadora.get() == movement['piedra']) or (jugador.get() == movement['tijera'] and computadora.get() == movement['papel']): winner.set(ctx.caller) return str(winner.get()) else: winner.set(propietario.get()) return str(winner.get()) @export def claimPremio(): assert ctx.caller == winner.get(), 'Solo el ganador puede reclamar el premio' currency.transfer_from(amount=premio.get, to=ctx.caller, main_account=propietario.get()) |
name | con_juego_2 |
State Changes
Contract | con_juego_2 |
Variable | __code__ |
New Value | random.seed() import currency __movement = Hash(default_value=0, contract='con_juego_2', name='movement') __winner = Variable(contract='con_juego_2', name='winner') __propietario = Variable(contract='con_juego_2', name='propietario') __jugador = Variable(contract='con_juego_2', name='jugador') __computadora = Variable(contract='con_juego_2', name='computadora') __premio = Variable(contract='con_juego_2', name='premio') def ____(): __movement['piedra'] = 1 __movement['papel'] = 2 __movement['tijera'] = 3 __jugador.set(__movement['piedra']) __computadora.set(__movement['piedra']) __propietario.set(ctx.caller) __premio.set(decimal('5.0')) @__export('con_juego_2') def Jugar(movimiento: int, precio: float): assert movimiento < 4, 'No puedes hacer ese movimiento!' assert precio == 3, 'El precio es 3 TAU' currency.transfer_from(amount=precio, to=__propietario.get(), main_account=ctx.caller) __jugador.set(movimiento) __computadora.set(random.randint(1, 3)) if __jugador.get() == __computadora.get(): return 'Empate' elif __jugador.get() == __movement['piedra'] and __computadora.get( ) == __movement['tijera'] or __jugador.get() == __movement['papel' ] and __computadora.get() == __movement['piedra'] or __jugador.get( ) == __movement['tijera'] and __computadora.get() == __movement['papel' ]: __winner.set(ctx.caller) return str(__winner.get()) else: __winner.set(__propietario.get()) return str(__winner.get()) @__export('con_juego_2') def claimPremio(): assert ctx.caller == __winner.get( ), 'Solo el ganador puede reclamar el premio' currency.transfer_from(amount=__premio.get, to=ctx.caller, main_account =__propietario.get()) |
Contract | con_juego_2 |
Variable | __compiled__ |
New Value | e30000000000000000000000000500000040000000738e00000065006a0183000100640064016c025a02650364006402640364048d035a0465056402640564068d025a0665056402640764068d025a0765056402640864068d025a0865056402640964068d025a0965056402640a64068d025a0a640b640c84005a0b650c64028301650d650e640d9c02640e640f840483015a0f650c6402830164106411840083015a10640153002912e9000000004eda0b636f6e5f6a7565676f5f32da086d6f76656d656e742903da0d64656661756c745f76616c7565da08636f6e7472616374da046e616d65da0677696e6e6572290272050000007206000000da0b70726f706965746172696fda076a756761646f72da0b636f6d70757461646f7261da067072656d696f63000000000000000000000000030000004300000073520000006401740064023c006403740064043c006405740064063c0074016a027400640219008301010074036a027400640219008301010074046a0274056a068301010074076a02740864078301830101006400530029084ee901000000da06706965647261e902000000da05706170656ce903000000da0674696a6572617a03352e302909da0a5f5f6d6f76656d656e74da095f5f6a756761646f72da03736574da0d5f5f636f6d70757461646f7261da0d5f5f70726f706965746172696fda03637478da0663616c6c6572da085f5f7072656d696fda07646563696d616ca900721b000000721b000000da00da045f5f5f5f0b000000730e00000000010801080108010e010e010c01721d0000002902da0a6d6f76696d69656e746fda0670726563696f63020000000000000002000000050000004300000073fc0000007c0064016b00731074006402830182017c0164036b027320740064048301820174016a027c0174036a04830074056a0664058d03010074076a087c008301010074096a08740a6a0b6406640383028301010074076a04830074096a0483006b0272666407530074076a048300740c640819006b02728674096a048300740c640919006b0273c674076a048300740c640a19006b0272a674096a048300740c640819006b0273c674076a048300740c640919006b0272de74096a048300740c640a19006b0272de740d6a0874056a0683010100740e740d6a04830083015300740d6a0874036a04830083010100740e740d6a0483008301530064005300290b4ee9040000007a1f4e6f2070756564657320686163657220657365206d6f76696d69656e746f2172100000007a12456c2070726563696f2065732033205441552903da06616d6f756e74da02746fda0c6d61696e5f6163636f756e74720c000000da06456d70617465720d0000007211000000720f000000290fda0e417373657274696f6e4572726f72da0863757272656e6379da0d7472616e736665725f66726f6d7216000000da0367657472170000007218000000721300000072140000007215000000da0672616e646f6dda0772616e64696e747212000000da085f5f77696e6e6572da037374722902721e000000721f000000721b000000721b000000721c000000da054a756761721500000073200000000002100110010c010a010a0112011001040116011a0116011a020c010c020e01722d000000630000000000000000000000000500000043000000733200000074006a0174026a0383006b027316740464018301820174056a0674076a0374006a0174086a03830064028d0301006400530029034e7a28536f6c6f20656c2067616e61646f72207075656465207265636c616d617220656c207072656d696f2903722100000072220000007223000000290972170000007218000000722b000000722800000072250000007226000000722700000072190000007216000000721b000000721b000000721b000000721c000000da0b636c61696d5072656d696f2b00000073080000000002100106010c01722e00000029117229000000da04736565647226000000da04486173687212000000da085661726961626c65722b0000007216000000721300000072150000007219000000721d000000da085f5f6578706f7274da03696e74da05666c6f6174722d000000722e000000721b000000721b000000721b000000721c000000da083c6d6f64756c653e010000007316000000080108010e010c010c010c010c010c03080a06011215 |
Contract | con_juego_2 |
Variable | __developer__ |
New Value | 225ec10455f8bd8757a8889ec5ac4ca5c68dd3fd49432d901e10a4252790c746 |
Contract | con_juego_2 |
Variable | __owner__ |
New Value | null |
Contract | con_juego_2 |
Variable | __submitted__ |
New Value | 2023,8,6,4,57,2,0 |
Contract | con_juego_2 |
Variable | computadora |
New Value | 1 |
Contract | con_juego_2 |
Variable | jugador |
New Value | 1 |
Contract | con_juego_2 |
Variable | movement |
Key | papel |
New Value | 2 |
Contract | con_juego_2 |
Variable | movement |
Key | piedra |
New Value | 1 |
Contract | con_juego_2 |
Variable | movement |
Key | tijera |
New Value | 3 |
Contract | con_juego_2 |
Variable | premio |
New Value | 5.0 |
Contract | con_juego_2 |
Variable | propietario |
New Value | 225ec10455f8bd8757a8889ec5ac4ca5c68dd3fd49432d901e10a4252790c746 |
Contract | currency |
Variable | balances |
Key | 225ec10455f8bd8757a8889ec5ac4ca5c68dd3fd49432d901e10a4252790c746 |
New Value | 47310.49230725461538883 |