usodeimagem.sol 920 B

1234567891011121314151617181920212223242526272829303132333435
  1. pragma solidity 0.4.25;
  2. contract UsoDeImagem {
  3. string public nomeEmpresa;
  4. address agente;
  5. address artista;
  6. modifier somenteArtista() {
  7. require(msg.sender==artista, "Somente artista pode realizar essa operação");
  8. _;
  9. }
  10. constructor() public {
  11. nomeEmpresa = "Artista SuperPop Ltda";
  12. artista = msg.sender;
  13. }
  14. function definirNomeDaEmpresa(string qualNomeDaEmpresa) public somenteArtista {
  15. nomeEmpresa = qualNomeDaEmpresa;
  16. }
  17. function definirAgente(address qualAgente) public somenteArtista {
  18. require(qualAgente != address(0), "Endereço de agente invalido");
  19. agente = qualAgente;
  20. }
  21. function receberPeloUso() public payable {
  22. require(msg.value >= 100 szabo, "Por favor pague o valor mínimo");
  23. if (agente != address(0)) {
  24. agente.transfer((msg.value * 10) / 100);
  25. }
  26. }
  27. }