подскажите как сделать подсчет руды в скрипте на мининг :)

Anything and all.

Moderators: Murderator+, Murderator

Mihail
Expert!
Posts: 548
Joined: 2005-05-20 20:30:10
Contact:

подскажите как сделать подсчет руды в скрипте на мининг :)

Post by Mihail »

Сделать надо примерно это:

Code: Select all

Всего руды выкопано:
Iron Ore: 110
Cooper Ore: 6
Agapite Ore: 4
Shadow Ore: 3
Orion Ore: N/A
Verite Ore: N/A
Dwarf Ore: N/A
Valorite Ore: N/A
Golden Ore: 2
Silver Ore: 2
Crystal Ore: N/A
Magma Ore: 1
Obsidian Ore: N/A

До дома руды доставлено:
Iron Ore: 110
Cooper Ore: 6
Agapite Ore: 4
Shadow Ore: 3
Orion Ore: N/A
Verite Ore: N/A
Dwarf Ore: N/A
Valorite Ore: N/A
Golden Ore: 2
Silver Ore: 2
Crystal Ore: N/A
Magma Ore: 1
Obsidian Ore: N/A

Потери:
Iron Ore: [0]
Cooper Ore: [0]
Agapite Ore: [0]
Shadow Ore: [0]
Orion Ore: [0]
Verite Ore: [0]
Dwarf Ore: [0]
Valorite Ore: [0]
Golden Ore: [0]
Silver Ore: [0]
Crystal Ore: [0]
Magma Ore: [0]
Obsidian Ore: [0]

Время: 19:31:30  (15.11.06)



смысл в том что на оскоме постоянно выкапываются элементали (которых голому шахтеру не реально завалить да и одетому-то игроку сложно), вобщем каждый вылезжий элементаль рандомно "забирает" часть руды из пака..
Я делал через глобальные переменные - тоесть после каждого сообщения 'You put' скрипт проставлял в глобальную переменную значение GetQuatntity('руды').. потом по прилету домой тоже считает руду в паке и проставляет в глобальную переменню с припиской "[Название руды]+home", затем сравнивает и выводит "Потери".. но я не учел.. что когда элементаль "забирает" часть руды то значение Глобальной переменной становится меньше..
тоесть было к примеру 100 айрон руды - вылез элементаль стало 70, а надо чтобы оставалось 100 и каждая последущая вырытая руда приплюсовывалась к 100.. ну я поставил проверку, что мол если количество<глобальной переменной то глобальной переменной значение количества не присваивается.. и снова столкнулся с проблемой - он не будет приплюсовывать руду, пока количество опять не достигнет глобальной переменной..
короче надеюсь кто-то что-то понял :) - объясните плиз как сделать :)
GimFlex
Expert!
Posts: 766
Joined: 2005-01-07 13:22:19
Contact:

Post by GimFlex »

я делал это когдато походу уже нет на форуме :cry:
GimFlex
Expert!
Posts: 766
Joined: 2005-01-07 13:22:19
Contact:

Post by GimFlex »

ща накатаю попробую пример для 3 руд
GimFlex
Expert!
Posts: 766
Joined: 2005-01-07 13:22:19
Contact:

Post by GimFlex »

не извени ничего толкового в голову не лезет :)
I'm
Expert!
Posts: 1396
Joined: 2004-10-15 22:38:04
Location: Moscow City.
Contact:

Post by I'm »

Я совсем понял :)
The End.
Scripts Writer
Posts: 2259
Joined: 2005-04-19 18:00:29
Location: Московская область
Contact:

Post by Scripts Writer »

Смысл такого подсчёта руды?!
Больше её от этого не станет.
И чем тебя не устраивает подсчёт руды перед реколом?
И что значит-доставлено/недоставлено. Ты её можешь недонести чтоли во время рекола?!
Mihail
Expert!
Posts: 548
Joined: 2005-05-20 20:30:10
Contact:

Post by Mihail »

пример:

Code: Select all

копаю я значит руду все нормально, у меня в паке лежит:
100 айрона
50 купера,
вылезает элементель - у меня автоматом в паке становится:
70 айрона
20 купера,
копаю еще -накопал допустим стало
90 айрона
40 купера - бац, опять элементаль - стало:

60 айрона,
10 купера,  - копаю - руда кончилась в радиусе 9на9 тайлов - лечу домой
делаю подсчет, он должен выдать:

Всего вы накопали:
120 айрона
70 купера

До дома доставлено:
60 айрона
10 купера

Потери (элементали сперли)
60 айрона
60 купера..

так понятней?:)
а сейчас выдает

Code: Select all

Всего вы накопали:
60 айрона
10 купера

До дома доставлено:
60 айрона
10 купера

Потери
0
0

-
как только получится нормальный подсчет добавлю "Элементали сперли руды на рыночную сумму (к примеру) 4 300гп)
"Всего выпкопано руды на сумму 6 100 гп)
I'm
Expert!
Posts: 1396
Joined: 2004-10-15 22:38:04
Location: Moscow City.
Contact:

Post by I'm »

+ "взвесить" можно просто при разгрузке и вычесть из счетчика или я не прав? :)
The End.
GimFlex
Expert!
Posts: 766
Joined: 2005-01-07 13:22:19
Contact:

Post by GimFlex »

делаем так во время мининга есть пременные которые увеличиваются постоянно с каждым выкапонным ором не важно были элементали или нет потом по прилету домой он сравнивает это число с кол-ом в паке вычитает и вот 3 вида переменной- скоко доставлено, всего, и потеряно. все очень просто
Mihail
Expert!
Posts: 548
Joined: 2005-05-20 20:30:10
Contact:

Post by Mihail »

можешь сделать? просто положит себе 10 айрон руды в пак и поэксперементировать - поймешь что все не очень просто.. есть мысль ввести 4-ую переменную.. вечепрм поэксперементирую..
GimFlex
Expert!
Posts: 766
Joined: 2005-01-07 13:22:19
Contact:

Post by GimFlex »

Mihail wrote:можешь сделать? просто положит себе 10 айрон руды в пак и поэксперементировать - поймешь что все не очень просто.. есть мысль ввести 4-ую переменную.. вечепрм поэксперементирую..


а без нее никак :wink:
GimFlex
Expert!
Posts: 766
Joined: 2005-01-07 13:22:19
Contact:

Post by GimFlex »

в общем вт пример так сокращенный в общих чертах

Code: Select all

sub mine()
while est ryda
var p=0
uo.waittargettitle(...)
uo.usetype(kirka)
repet
 wait(100)
until uo.inj("ore")
p=p+1
wend
porthome(p)
endsub

sub porthome(x)
var m
m=uo.getquantity(ore)
uo.castspell("port to home")
uo.print("vsego rydu"+x)
uo.print("dostavleno"+m)
uo.print("poteryano"+x-m)
endsub


все просто
I'm
Expert!
Posts: 1396
Joined: 2004-10-15 22:38:04
Location: Moscow City.
Contact:

Post by I'm »

Question_GimFlex wrote:делаем так во время мининга есть пременные которые увеличиваются постоянно с каждым выкапонным ором не важно были элементали или нет потом по прилету домой он сравнивает это число с кол-ом в паке вычитает и вот 3 вида переменной- скоко доставлено, всего, и потеряно. все очень просто

хм я вроде тоже самое сказал :)
The End.
GimFlex
Expert!
Posts: 766
Joined: 2005-01-07 13:22:19
Contact:

Post by GimFlex »

I'm wrote:
Question_GimFlex wrote:делаем так во время мининга есть пременные которые увеличиваются постоянно с каждым выкапонным ором не важно были элементали или нет потом по прилету домой он сравнивает это число с кол-ом в паке вычитает и вот 3 вида переменной- скоко доставлено, всего, и потеряно. все очень просто

хм я вроде тоже самое сказал :)


тока в сокращенной форме :)
Scripts Writer
Posts: 2259
Joined: 2005-04-19 18:00:29
Location: Московская область
Contact:

Post by Scripts Writer »

Question_GimFlex wrote:в общем вт пример так сокращенный в общих чертах

Code: Select all

sub mine()
while est ryda
var p=0
uo.waittargettitle(...)
uo.usetype(kirka)
repet
 wait(100)
until uo.inj("ore")
p=p+1
wend
porthome(p)
endsub

sub porthome(x)
var m
m=uo.getquantity(ore)
uo.castspell("port to home")
uo.print("vsego rydu"+x)
uo.print("dostavleno"+m)
uo.print("poteryano"+x-m)
endsub


все просто


Поддерживаю. Вопрос лишь в том, сколько переменных понадобится для определения каждой руды?!
Тут думаю понадобится массив.
GimFlex
Expert!
Posts: 766
Joined: 2005-01-07 13:22:19
Contact:

Post by GimFlex »

You Must Die wrote:
Question_GimFlex wrote:в общем вт пример так сокращенный в общих чертах

Code: Select all

sub mine()
while est ryda
var p=0
uo.waittargettitle(...)
uo.usetype(kirka)
repet
 wait(100)
until uo.inj("ore")
p=p+1
wend
porthome(p)
endsub

sub porthome(x)
var m
m=uo.getquantity(ore)
uo.castspell("port to home")
uo.print("vsego rydu"+x)
uo.print("dostavleno"+m)
uo.print("poteryano"+x-m)
endsub


все просто


Поддерживаю. Вопрос лишь в том, сколько переменных понадобится для определения каждой руды?!
Тут думаю понадобится массив.


ну это ужо к автору
Mihail
Expert!
Posts: 548
Joined: 2005-05-20 20:30:10
Contact:

Post by Mihail »

Question_GimFlex wrote:

Code: Select all


sub porthome(x)
var m
m=uo.getquantity(ore)
uo.castspell("port to home")
uo.print("vsego rydu"+x)
uo.print("dostavleno"+m)
uo.print("poteryano"+x-m)
endsub


все просто

нет нет и еще раз нет.. если бы все было так просто я бы сюда не писал :) если попробуешь потестировать это на практике, то кол-во руды доставленное домой всегда будет = кол-ву руды вырытому в шахте..
ну потестите кому не лень - поймете что тут не так все просто как кажеься на первый взгляд..

p.s. да стоит у меня массив с этим я разберусь вы хоть просто с айроном потестите :)
GimFlex
Expert!
Posts: 766
Joined: 2005-01-07 13:22:19
Contact:

Post by GimFlex »

тестил работает
Destruction
Junior Expert
Posts: 3221
Joined: 2004-06-24 22:08:56

Post by Destruction »

Хмм, а я вообще не вижу проблемы в первоначальном скрипте.. (скрип не смотрел, тока описание).

Как выкапали руду - записываем сколько выкапали, не проблема.

Выкапали элементаля - он нас обокрал, не суть принципно.

Улетели домой - вычли из того, что записано то, что принесено - получили список потерь.

Что не так-то получается ? (Тему перечитал 3 раза, никак не пойму, где у вас проблема возникла).
Scripts Writer
Posts: 2259
Joined: 2005-04-19 18:00:29
Location: Московская область
Contact:

Post by Scripts Writer »

Проблема как я понял- записать и вычесть.
Post Reply