@@ -29,7 +29,7 @@ import {
29 setStoredInvites,
29 setStoredInvites,
30} from 'store/storage/roller';
30} from 'store/storage/roller';
31import { usePointCache } from 'store/pointCache';
31import { usePointCache } from 'store/pointCache';
32−import { getOutgoingPoints, hasTransferProxy, maybeGetResult } from 'views/Points';
32+import { getOutgoingPoints, maybeGetResult } from 'views/Points';
34const hasPoint = (point: number) => (invite: Invite) => invite.planet === point;
34const hasPoint = (point: number) => (invite: Invite) => invite.planet === point;
@@ -227,7 +227,6 @@ export default function useRoller() {
227 const curPoint: string = need.point(pointCursor);
227 const curPoint: string = need.point(pointCursor);
228 const invites = getStoredInvites(curPoint);
228 const invites = getStoredInvites(curPoint);
229 const availableInvites = invites.available;
229 const availableInvites = invites.available;
230− console.log('WHAT', curPoint, invites, availableInvites)
232 const pendingTransactions = await api.getPendingByShip(curPoint);
231 const pendingTransactions = await api.getPendingByShip(curPoint);
233 console.log('PENDING', pendingTransactions);
232 console.log('PENDING', pendingTransactions);
@@ -252,43 +251,51 @@ export default function useRoller() {
253 setInvites(availableInvites);
252 setInvites(availableInvites);
255− let possibleMissingInvites: number[] = [];
258− const allSpawned = await api.getSpawned(Number(curPoint));
259− const ownedPoints = maybeGetResult(controlledPoints, 'ownedPoints', []);
260− possibleMissingInvites = allSpawned.filter(
262− ownedPoints.includes(p) &&
263− azimuth.azimuth.getPointSize(p) ===
264− azimuth.azimuth.PointSize.Planet
267− // How to get outgoing points by star?
268− const outgoingPoints = getOutgoingPoints(
273− possibleMissingInvites = outgoingPoints.filter(
275− azimuth.azimuth.getPointSize(p) ===
276− azimuth.azimuth.PointSize.Planet
280− // Iterate over all spawned and controlled planets
281− // If the planet is not in available invites, generate the ticket and add it
282 const _authToken = authToken.getOrElse(null);
254 const _authToken = authToken.getOrElse(null);
283 const _contracts = contracts.getOrElse(null);
255 const _contracts = contracts.getOrElse(null);
257+ if (_authToken && _contracts) {
258+ let possibleMissingInvites: number[] = [];
260+ const allSpawned = await api.getSpawned(Number(curPoint));
261+ const ownedPoints = maybeGetResult(
266+ possibleMissingInvites = allSpawned.filter(
268+ ownedPoints.includes(p) &&
269+ azimuth.azimuth.getPointSize(p) ===
270+ azimuth.azimuth.PointSize.Planet
273+ const outgoingPoints = getOutgoingPoints(
278+ const availablePoints = await azimuth.azimuth.getUnspawnedChildren(
285− console.log('POSSIBLE MISSING', possibleMissingInvites)
283+ possibleMissingInvites = outgoingPoints.filter(
285+ azimuth.azimuth.getPointSize(p) ===
286+ azimuth.azimuth.PointSize.Planet &&
287+ availablePoints.includes(p)
291+ // Iterate over all spawned and controlled planets
292+ // If the planet is not in available invites, generate the ticket and add it
293+ console.log('POSSIBLE MISSING', possibleMissingInvites);
287− const newClaimed = availableInvites.filter(
295+ const newClaimed = availableInvites.filter(
288− ({ planet }) => !possibleMissingInvites.includes(planet)
296+ ({ planet }) => !possibleMissingInvites.includes(planet)
291− if (_authToken && _contracts) {
292 for (let i = 0; i < possibleMissingInvites.length; i++) {
299 for (let i = 0; i < possibleMissingInvites.length; i++) {
293 const planet = possibleMissingInvites[i];
300 const planet = possibleMissingInvites[i];
@@ -359,12 +366,12 @@ export default function useRoller() {
359 setNextBatchTime(response.nextBatch);
366 setNextBatchTime(response.nextBatch);
362− getInvites();
369+ getInvites(currentL2);
364 }, 1000);
371 }, 1000);
366 return () => clearInterval(interval);
373 return () => clearInterval(interval);
367− }, [nextBatchTime, getPendingTransactions]); // eslint-disable-line react-hooks/exhaustive-deps
374+ }, [nextBatchTime, getPendingTransactions, currentL2]); // eslint-disable-line react-hooks/exhaustive-deps