Guest User

Untitled

a guest
May 27th, 2018
92
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Perl 1.70 KB | None | 0 0
  1. #!/usr/bin/perl
  2.  
  3. use strict;
  4. use warnings;
  5. use DBI;
  6. use config;
  7.  
  8. my ($labs,$reac,$conv,$lq,$rq,$cq);
  9. my $base = 10;
  10.  
  11.  
  12. my $dbh = DBI->connect("DBI:mysql:$dbname:$dbhost",$dbuser,$dbpass);
  13. my $sth = $dbh->prepare("SELECT id,nano FROM users");
  14. my $sth2 = $dbh->prepare("SELECT id,labs,reactors,converters,lq,rq,cq FROM planets WHERE owner=?");
  15. my $update = $dbh->prepare("UPDATE planets SET labs=?,reactors=?,converters=?,lq=?,rq=?,cq=? WHERE id=?");
  16.  
  17. $sth->execute;
  18. while (my @user = $sth->fetchrow_array()) {
  19.  
  20.         $sth2->execute($user[0]);
  21.  
  22.         while (my @row = $sth2->fetchrow_array()) {
  23.                 $limit = $base+$user[1];
  24.                 print "row: @row \n";
  25.                 #labs
  26.                 ($labs,$lq) = build( $limit , $row[ 1 ] , $row[ 4 ] );
  27.                 print "$labs $lq ";
  28.                
  29.                 #reac
  30.                 ($reac,$rq) = build( $limit , $row[ 2 ] , $row[ 5 ] );
  31.                 print "$reac $rq ";
  32.  
  33.                 #conv
  34.                 ($conv,$cq) = build( $limit , $row[ 2 ] , $row[ 5 ] );
  35.                 print "$conv $cq ";
  36.  
  37.                 print "$user[0] \n";
  38.                 $update->execute($labs,$reac,$conv,$lq,$rq,$cq,$user[0]);
  39.                
  40.         }
  41. }
  42.        
  43.  
  44. # $limit
  45. # $val1 current buildings
  46. # $val2 build que
  47.  
  48. sub build {
  49.     my ( $limit , $val1 , $val2 ) = @_;
  50.  
  51.         if ($val2 > $limit) {
  52.                 $val2 -= $limit; #add building
  53.                 $val1 += $limit; #remove que
  54.                
  55.         } elsif ($val2 < $limit) {
  56.                 $limit -= $val2; #remove que from limit
  57.                 $val1 += $val2; # add buildings
  58.                 #$val2 = 0;
  59.  
  60.         }
  61.     return($val1,$val2);
  62. }
Add Comment
Please, Sign In to add comment