Contract con_pruebas_3


Contract Code


  
1
2 movement = Hash(default_value=0)
3 winner = Variable()
4 propietario = Variable()
5 jugador = Variable()
6 computadora = Variable()
7
8 @construct
9 def seed():
10 movement['piedra'] = 1
11 movement['papel'] = 2
12 movement['tijera'] = 3
13 jugador.set(movement['piedra'])
14 computadora.set(movement['piedra'])
15 propietario.set(ctx.caller)
16
17 @export
18 def makemovement(movimiento: int):
19 jugador.set(movimiento)
20 computadora.set(random.randint(1, 3))
21
22 @export
23 def determinarGanador():
24 if jugador == computadora:
25 return 'Empate'
26 elif (jugador == movement['piedra'] and computadora == movement['tijera']) or (jugador == movement['papel'] and computadora == movement['piedra']) or (jugador == movement['tijera'] and computadora == movement['papel']):
27 resultado_ganador = winner.set(ctx.caller)
28 return str(resultado_ganador)
29 else:
30 gana_creador = winner.set(propietario.get)
31 return str(gana_creador)
32

Byte Code

e300000000000000000000000005000000400000007370000000650064006401640264038d035a0165026401640464058d025a0365026401640664058d025a0465026401640764058d025a0565026401640864058d025a066409640a84005a076508640183016509640b9c01640c640d840483015a0a650864018301640e640f840083015a0b641053002911e900000000da0d636f6e5f707275656261735f33da086d6f76656d656e742903da0d64656661756c745f76616c7565da08636f6e7472616374da046e616d65da0677696e6e6572290272050000007206000000da0b70726f706965746172696fda076a756761646f72da0b636f6d70757461646f726163000000000000000000000000030000004300000073440000006401740064023c006403740064043c006405740064063c0074016a027400640219008301010074036a027400640219008301010074046a0274056a06830101006400530029074ee901000000da06706965647261e902000000da05706170656ce903000000da0674696a6572612907da0a5f5f6d6f76656d656e74da095f5f6a756761646f72da03736574da0d5f5f636f6d70757461646f7261da0d5f5f70726f706965746172696fda03637478da0663616c6c6572a90072180000007218000000da00da045f5f5f5f08000000730c00000000010801080108010e010e01721a0000002901da0a6d6f76696d69656e746f630100000000000000010000000400000043000000732000000074006a017c008301010074026a0174036a04640164028302830101006400530029034e720b000000720f0000002905721200000072130000007214000000da0672616e646f6dda0772616e64696e742901721b000000721800000072180000007219000000da0c6d616b656d6f76656d656e7411000000730400000000020a01721e0000006300000000000000000200000003000000430000007380000000740074016b02720c6401530074007402640219006b02722474017402640319006b02735474007402640419006b02723c74017402640219006b02735474007402640319006b02726874017402640419006b02726874036a0474056a0683017d0074077c008301530074036a0474086a0983017d0174077c01830153006400530029054eda06456d70617465720c0000007210000000720e000000290a721200000072140000007211000000da085f5f77696e6e6572721300000072160000007217000000da037374727215000000da036765742902da11726573756c7461646f5f67616e61646f72da0c67616e615f63726561646f72721800000072180000007219000000da1164657465726d696e617247616e61646f7217000000731400000000020801040110011401100114010c0108020c0172250000004e290cda04486173687211000000da085661726961626c657220000000721500000072120000007214000000721a000000da085f5f6578706f7274da03696e74721e00000072250000007218000000721800000072180000007219000000da083c6d6f64756c653e0100000073100000000e010c010c010c010c03080906011005