コード例 #1
0
ファイル: Level.php プロジェクト: Edwardthedog2/Steadfast2
 public function addParticle(Particle $particle, array $players = \null)
 {
     $pk = $particle->encode();
     if ($players === \null) {
         $players = $this->getUsingChunk($particle->x >> 4, $particle->z >> 4);
     }
     if ($pk !== \null) {
         if (!\is_array($pk)) {
             Server::broadcastPacket($players, $pk->setChannel(Network::CHANNEL_WORLD_EVENTS));
         } else {
             $this->server->batchPackets($players, $pk, \false, Network::CHANNEL_WORLD_EVENTS);
         }
     }
 }
コード例 #2
0
ファイル: main.php プロジェクト: Axure/Benchmarks
<?php

require_once __DIR__ . '/Vector.php';
require_once __DIR__ . '/Particle.php';
if ($argc != 3) {
    printf("Usage: %s <time delta> <count>\n", $argv[0]);
    exit(1);
}
$timeDelta = $argv[1];
$count = $argv[2];
$p1 = new Particle(new Vector(0.3, 0), -1);
$p2 = new Particle(new Vector(-0.3, 1), 1);
for ($i = 0; $i < $count; $i++) {
    $force1 = $p1->forceFrom($p2);
    $force2 = $p2->forceFrom($p1);
    $p1->applyForce($force1, $timeDelta);
    $p2->applyForce($force2, $timeDelta);
}
echo "p1 = " . $p1 . "\n";
echo "p2 = " . $p2 . "\n";