Elite Games - Свобода среди звезд!
.
  » Структура данных X-Tension | страница 15
Конференция предназначена для общения пилотов. Для удобства она разделена на каналы, каждый из которых посвящен определенной игре. Пожалуйста, открывайте темы только в соответствующих каналах и после того, как убедитесь, что данный вопрос не обсуждался ранее.

Поиск | Правила конференции | Фотоальбом | Регистрация | Список пилотов | Профиль | Войти и проверить личные сообщения | Вход

   Страница 15 из 15
На страницу: Пред.  1, 2, 3 ... 13, 14, 15    Перейти:   Все страницы
Поиск в этой теме:
Канал X-Tension/X-BTF: «Структура данных X-Tension»
aL144
 308 EGP


Рейтинг канала: 6(284)
Репутация: 27
Сообщения: 373
Откуда: Город непуганных идиотов
Зарегистрирован: 07.05.2014
К слову, как сделать так, чтобы игрок продавал любой корабль не за 80% его стоимости, а за, скажем, 10 или 20%?
_________________
Там где я был - смерти никогда не было, там где я есть - ее никогда не будет...
    Добавлено: 23:26 21-03-2018   
KWON
 331 EGP


Рейтинг канала: 7(586)
Репутация: -10
Сообщения: 143
Откуда: Україна. Чигирин.
Зарегистрирован: 24.11.2014
Я думаю искать нужно здесь:

2217-TMENU_TRADE

 Cкрытый текст   (кликните здесь для просмотра)
Код:

; === ShipPrice =================================================
; function  TMENU_TRADE.ShipPrice(arg1);
;
                                 |      TMENU_TRADE.ShipPrice:
0012821A: 0055 0014              |    0            setmem     20d ; 14h
0012821E: 0009                   |    0            push       0
00128220: 0005 0005              |    1            push       SP[4] ; arg1
00128224: 0057 000003DF          |    2            call       GetGType ; 000003DF
0012822A: 0009                   |    1            push       0
0012822C: 0005 0006              |    2            push       SP[5] ; arg1
00128230: 0057 00000EAC          |    3            call       GetSubType ; 00000EAC
00128236: 0009                   |    2            push       0
00128238: 0009                   |    3            push       0
0012823A: 0009                   |    4            push       0
0012823C: 0005 0009              |    5            push       SP[8] ; arg1
00128240: 0057 00000BCC          |    6            call       GetWares ; 00000BCC
00128246: 0009                   |    5            push       0
00128248: 0009                   |    6            push       0
0012824A: 0005 000B              |    7            push       SP[10d] ; arg1
0012824E: 0057 00000EAC          |    8            call       GetSubType ; 00000EAC
00128254: 0009                   |    7            push       0
00128256: 0005 000C              |    8            push       SP[11d] ; arg1
0012825A: 0057 000003DF          |    9            call       GetGType ; 000003DF
00128260: 000B                   |    8            push       2
00128262: 0006 0048              |    9            read       TMENU_TRADE.tm_Tradepartner ; [72d ; 48h]
00128266: 0057 00000C7E          |   10            call       GetWareTypePrice ; 00000C7E
0012826C: 002A 0005              |    7            mov        SP[4],SP[0] ; loc3
00128270: 0051                   |    7            if SP[0]=0 then push 1 else push 0
00128272: 0033 00094182          |    7            if SP[0]=0 then jump L0012830C
00128278: 000D                   |    6            push       4
0012827A: 0009                   |    7            push       0
0012827C: 0005 000C              |    8            push       SP[11d] ; arg1
00128280: 0057 00000EAC          |    9            call       GetSubType ; 00000EAC
00128286: 0009                   |    8            push       0
00128288: 0005 000D              |    9            push       SP[12d] ; arg1
0012828C: 0057 000003DF          |   10            call       GetGType ; 000003DF
00128292: 000B                   |    9            push       2
00128294: 005A 00000953          |   10            callasm    SA_GetTypeRelValue ; 00000953
0012829A: 0040                   |    8            mul        SP[0],SP[1]
0012829C: 0009                   |    7            push       0
0012829E: 0005 000C              |    8            push       SP[11d] ; arg1
001282A2: 0057 000003DF          |    9            call       GetGType ; 000003DF
001282A8: 000A                   |    8            push       1
001282AA: 0058 00016018 00000966 |    9            call58     global.GetValueFactor ; 00016018, 00000966
001282B4: 0040                   |    8            mul        SP[0],SP[1]
001282B6: 002A 0005              |    7            mov        SP[4],SP[0] ; loc3
001282BA: 002C                   |    7            pop
001282BC: 000D                   |    6            push       4
001282BE: 0002 00010000          |    7            pushd      65536d ; 00010000h
001282C4: 0009                   |    8            push       0
001282C6: 0005 000D              |    9            push       SP[12d] ; arg1
001282CA: 0057 000003DF          |   10            call       GetGType ; 000003DF
001282D0: 000A                   |    9            push       1
001282D2: 0058 00015F79 00009728 |   10            call58     global.GetFixedValueFactor ; 00015F79, 00009728
001282DC: 0009                   |    9            push       0
001282DE: 0005 000E              |   10            push       SP[13d] ; arg1
001282E2: 0057 00000EAC          |   11            call       GetSubType ; 00000EAC
001282E8: 0009                   |   10            push       0
001282EA: 0005 000F              |   11            push       SP[14d] ; arg1
001282EE: 0057 000003DF          |   12            call       GetGType ; 000003DF
001282F4: 000B                   |   11            push       2
001282F6: 005A 00000953          |   12            callasm    SA_GetTypeRelValue ; 00000953
001282FC: 000C                   |   10            push       3
001282FE: 005A 000043F1          |   11            callasm    SE_MulDivFix ; 000043F1
00128304: 0040                   |    8            mul        SP[0],SP[1]
00128306: 002A 0005              |    7            mov        SP[4],SP[0] ; loc3
0012830A: 002C                   |    7            pop
0012830C: 0009                   |    6 L0012830C: push       0
0012830E: 0005 0003              |    7            push       SP[2] ; loc5
00128312: 000B                   |    8            push       2
00128314: 005A 00000B48          |    9            callasm    SE_TableNext ; 00000B48
0012831A: 002A 0002              |    7            mov        SP[1],SP[0] ; loc6
0012831E: 002C                   |    7            pop
00128320: 0005 0001              |    6 L00128320: push       SP[0] ; loc6
00128324: 0009                   |    7            push       0
00128326: 004E                   |    8            if SP[0]=SP[1] then push 0 else push 1
00128328: 0033 00094328          |    7            if SP[0]=0 then jump L00128658
0012832E: 0031 000941A4          |    6            jump       L00128350

00128334: 0005 0001              |    6 L00128334: push       SP[0] ; loc6
00128338: 0005 0003              |    7            push       SP[2] ; loc5
0012833C: 000B                   |    8            push       2
0012833E: 005A 00000B48          |    9            callasm    SE_TableNext ; 00000B48
00128344: 002A 0002              |    7            mov        SP[1],SP[0] ; loc6
00128348: 002C                   |    7            pop
0012834A: 0031 0009418C          |    6            jump       L00128320

00128350: 0005 0001              |    6 L00128350: push       SP[0] ; loc6
00128354: 0019                   |    7            push       16d ; 10h
00128356: 0049                   |    8            shr        SP[1],SP[0]
00128358: 0001 00FF              |    7            pushw      255d ; 0FFh
0012835C: 0044                   |    8            and        SP[0],SP[1]
0012835E: 0005 0002              |    7            push       SP[1] ; loc6
00128362: 0001 00FF              |    8            pushw      255d ; 0FFh
00128366: 0044                   |    9            and        SP[0],SP[1]
00128368: 0005 0001              |    8            push       SP[0] ; loc8
0012836C: 0005 0003              |    9            push       SP[2] ; loc7
00128370: 000B                   |   10            push       2
00128372: 0005 000F              |   11            push       SP[14d] ; arg1
00128376: 0057 00001146          |   12            call       GetWareTypeCount ; 00001146
0012837C: 0009                   |    9            push       0
0012837E: 0009                   |   10            push       0
00128380: 0009                   |   11            push       0
00128382: 0009                   |   12            push       0
00128384: 0005 0007              |   13            push       SP[6] ; loc7
00128388: 0019                   |   14            push       16d ; 10h
0012838A: 004E                   |   15            if SP[0]=SP[1] then push 0 else push 1
0012838C: 0032 000941EE          |   14            if SP[0]<>0 then jump L001283E4
00128392: 0005 0006              |   13            push       SP[5] ; loc8
00128396: 001A                   |   14            push       17d ; 11h
00128398: 004E                   |   15            if SP[0]=SP[1] then push 0 else push 1
0012839A: 0033 000941D7          |   14            if SP[0]=0 then jump L001283B6
001283A0: 0005 0006              |   13            push       SP[5] ; loc8
001283A4: 001B                   |   14            push       18d ; 12h
001283A6: 004E                   |   15            if SP[0]=SP[1] then push 0 else push 1
001283A8: 0033 000941D7          |   14            if SP[0]=0 then jump L001283B6
001283AE: 000A                   |   13            push       1
001283B0: 0031 000941D8          |   14            jump       L001283B8

001283B6: 0009                   |   13 L001283B6: push       0
001283B8: 0033 000941E6          |   14 L001283B8: if SP[0]=0 then jump L001283D4
001283BE: 0005 0006              |   13            push       SP[5] ; loc8
001283C2: 0019                   |   14            push       16d ; 10h
001283C4: 004E                   |   15            if SP[0]=SP[1] then push 0 else push 1
001283C6: 0033 000941E6          |   14            if SP[0]=0 then jump L001283D4
001283CC: 000A                   |   13            push       1
001283CE: 0031 000941E7          |   14            jump       L001283D6

001283D4: 0009                   |   13 L001283D4: push       0
001283D6: 0032 000941EE          |   14 L001283D6: if SP[0]<>0 then jump L001283E4
001283DC: 0009                   |   13            push       0
001283DE: 0031 000941EF          |   14            jump       L001283E6

001283E4: 000A                   |   13 L001283E4: push       1
001283E6: 0033 000942A3          |   14 L001283E6: if SP[0]=0 then jump L0012854E
001283EC: 0005 0007              |   13            push       SP[6] ; loc7
001283F0: 0019                   |   14            push       16d ; 10h
001283F2: 004E                   |   15            if SP[0]=SP[1] then push 0 else push 1
001283F4: 0032 00094204          |   14            if SP[0]<>0 then jump L00128410
001283FA: 0005 0006              |   13            push       SP[5] ; loc8
001283FE: 0014                   |   14            push       11d ; 0Bh
00128400: 004A                   |   15            if SP[0]<=SP[1] then push 0 else push 1
00128402: 0032 00094204          |   14            if SP[0]<>0 then jump L00128410
00128408: 0009                   |   13            push       0
0012840A: 0031 00094205          |   14            jump       L00128412

00128410: 000A                   |   13 L00128410: push       1
00128412: 0033 00094255          |   14 L00128412: if SP[0]=0 then jump L001284B2
00128418: 0005 0006              |   13            push       SP[5] ; loc8
0012841C: 0005 0008              |   14            push       SP[7] ; loc7
00128420: 000B                   |   15            push       2
00128422: 005A 00000953          |   16            callasm    SA_GetTypeRelValue ; 00000953
00128428: 0005 0008              |   14            push       SP[7] ; loc7
0012842C: 000A                   |   15            push       1
0012842E: 0058 00016018 00000966 |   16            call58     global.GetValueFactor ; 00016018, 00000966
00128438: 0040                   |   15            mul        SP[0],SP[1]
0012843A: 0002 00010000          |   14            pushd      65536d ; 00010000h
00128440: 0005 0009              |   15            push       SP[8] ; loc7
00128444: 000A                   |   16            push       1
00128446: 0058 00015F79 00009728 |   17            call58     global.GetFixedValueFactor ; 00015F79, 00009728
00128450: 0005 0009              |   16            push       SP[8] ; loc8
00128454: 0005 000B              |   17            push       SP[10d] ; loc7
00128458: 000B                   |   18            push       2
0012845A: 005A 00000953          |   19            callasm    SA_GetTypeRelValue ; 00000953
00128460: 000C                   |   17            push       3
00128462: 005A 000043F1          |   18            callasm    SE_MulDivFix ; 000043F1
00128468: 002A 0002              |   15            mov        SP[1],SP[0] ; loc14
0012846C: 002C                   |   15            pop
0012846E: 000D                   |   14            push       4
00128470: 0005 0002              |   15            push       SP[1] ; loc14
00128474: 0040                   |   16            mul        SP[0],SP[1]
00128476: 0005 0008              |   15            push       SP[7] ; loc8
0012847A: 0005 000A              |   16            push       SP[9] ; loc7
0012847E: 000B                   |   17            push       2
00128480: 005A 0000124D          |   18            callasm    SA_GetTypePriMaxP ; 0000124D
00128486: 0040                   |   16            mul        SP[0],SP[1]
00128488: 0001 0064              |   15            pushw      100d ; 64h
0012848C: 0041                   |   16            div        SP[0],SP[1]
0012848E: 0005 0007              |   15            push       SP[6] ; loc9
00128492: 000D                   |   16            push       4
00128494: 0005 0004              |   17            push       SP[3] ; loc14
00128498: 0040                   |   18            mul        SP[0],SP[1]
0012849A: 0005 0003              |   17            push       SP[2] ; loc15
0012849E: 003F                   |   18            sub        SP[0],SP[1]
001284A0: 0040                   |   17            mul        SP[0],SP[1]
001284A2: 002A 0004              |   16            mov        SP[3],SP[0] ; loc13
001284A6: 002C                   |   16            pop
001284A8: 002E 0002              |   15            popx       2
001284AC: 0031 000942A0          |   13            jump       L00128548

001284B2: 0005 0005              |   13 L001284B2: push       SP[4] ; loc9
001284B6: 0005 0007              |   14            push       SP[6] ; loc8
001284BA: 0005 0009              |   15            push       SP[8] ; loc7
001284BE: 000B                   |   16            push       2
001284C0: 0006 0048              |   17            read       TMENU_TRADE.tm_Tradepartner ; [72d ; 48h]
001284C4: 0057 00000C7E          |   18            call       GetWareTypePrice ; 00000C7E
001284CA: 0040                   |   15            mul        SP[0],SP[1]
001284CC: 002A 0002              |   14            mov        SP[1],SP[0] ; loc13
001284D0: 0051                   |   14            if SP[0]=0 then push 1 else push 0
001284D2: 0033 000942A0          |   14            if SP[0]=0 then jump L00128548
001284D8: 0005 0005              |   13            push       SP[4] ; loc9
001284DC: 000D                   |   14            push       4
001284DE: 0005 0008              |   15            push       SP[7] ; loc8
001284E2: 0005 000A              |   16            push       SP[9] ; loc7
001284E6: 000B                   |   17            push       2
001284E8: 005A 00000953          |   18            callasm    SA_GetTypeRelValue ; 00000953
001284EE: 0040                   |   16            mul        SP[0],SP[1]
001284F0: 0005 0009              |   15            push       SP[8] ; loc7
001284F4: 000A                   |   16            push       1
001284F6: 0058 00016018 00000966 |   17            call58     global.GetValueFactor ; 00016018, 00000966
00128500: 0040                   |   16            mul        SP[0],SP[1]
00128502: 0040                   |   15            mul        SP[0],SP[1]
00128504: 002A 0002              |   14            mov        SP[1],SP[0] ; loc13
00128508: 002C                   |   14            pop
0012850A: 0005 0005              |   13            push       SP[4] ; loc9
0012850E: 000D                   |   14            push       4
00128510: 0002 00010000          |   15            pushd      65536d ; 00010000h
00128516: 0005 000A              |   16            push       SP[9] ; loc7
0012851A: 000A                   |   17            push       1
0012851C: 0058 00015F79 00009728 |   18            call58     global.GetFixedValueFactor ; 00015F79, 00009728
00128526: 0005 000A              |   17            push       SP[9] ; loc8
0012852A: 0005 000C              |   18            push       SP[11d] ; loc7
0012852E: 000B                   |   19            push       2
00128530: 005A 00000953          |   20            callasm    SA_GetTypeRelValue ; 00000953
00128536: 000C                   |   18            push       3
00128538: 005A 000043F1          |   19            callasm    SE_MulDivFix ; 000043F1
0012853E: 0040                   |   16            mul        SP[0],SP[1]
00128540: 0040                   |   15            mul        SP[0],SP[1]
00128542: 002A 0002              |   14            mov        SP[1],SP[0] ; loc13
00128546: 002C                   |   14            pop
00128548: 0031 0009431B          |   13 L00128548: jump       L0012863E

0012854E: 0005 0006              |   13 L0012854E: push       SP[5] ; loc8
00128552: 0019                   |   14            push       16d ; 10h
00128554: 004F                   |   15            if SP[0]<>SP[1] then push 0 else push 1
00128556: 0033 000942D8          |   14            if SP[0]=0 then jump L001285B8
0012855C: 0001 03E8              |   13            pushw      1000d ; 03E8h
00128560: 002A 0005              |   14            mov        SP[4],SP[0] ; loc10
00128564: 002C                   |   14            pop
00128566: 0009                   |   13            push       0
00128568: 0005 0012              |   14            push       SP[17d] ; arg1
0012856C: 0057 000010D5          |   15            call       TSHIP.GetExtraTradeContainerSize ; 000010D5
00128572: 002A 0006              |   14            mov        SP[5],SP[0] ; loc9
00128576: 002C                   |   14            pop
00128578: 0005 000C              |   13            push       SP[11d] ; loc2
0012857C: 000A                   |   14            push       1
0012857E: 005A 00001114          |   15            callasm    SA_GetShipTypeTradeContainerSize ; 00001114
00128584: 002A 0004              |   14            mov        SP[3],SP[0] ; loc11
00128588: 002C                   |   14            pop
0012858A: 0005 000C              |   13            push       SP[11d] ; loc2
0012858E: 000A                   |   14            push       1
00128590: 005A 000010F0          |   15            callasm    SA_GetShipTypeMaxTradeContainerSize ; 000010F0
00128596: 0005 000D              |   14            push       SP[12d] ; loc2
0012859A: 000A                   |   15            push       1
0012859C: 005A 00001114          |   16            callasm    SA_GetShipTypeTradeContainerSize ; 00001114
001285A2: 003F                   |   15            sub        SP[0],SP[1]
001285A4: 002A 0003              |   14            mov        SP[2],SP[0] ; loc12
001285A8: 002C                   |   14            pop
001285AA: 0009                   |   13            push       0
001285AC: 002A 0004              |   14            mov        SP[3],SP[0] ; loc11
001285B0: 002C                   |   14            pop
001285B2: 0031 00094306          |   13            jump       L00128614

001285B8: 0005 0006              |   13 L001285B8: push       SP[5] ; loc8
001285BC: 001A                   |   14            push       17d ; 11h
001285BE: 004F                   |   15            if SP[0]<>SP[1] then push 0 else push 1
001285C0: 0033 000942F4          |   14            if SP[0]=0 then jump L001285F0
001285C6: 0001 0BB8              |   13            pushw      3000d ; 0BB8h
001285CA: 002A 0005              |   14            mov        SP[4],SP[0] ; loc10
001285CE: 002C                   |   14            pop
001285D0: 0009                   |   13            push       0
001285D2: 002A 0004              |   14            mov        SP[3],SP[0] ; loc11
001285D6: 002C                   |   14            pop
001285D8: 0005 000C              |   13            push       SP[11d] ; loc2
001285DC: 000A                   |   14            push       1
001285DE: 005A 00001157          |   15            callasm    SA_GetShipTypeMaxExtraSpeed ; 00001157
001285E4: 002A 0003              |   14            mov        SP[2],SP[0] ; loc12
001285E8: 002C                   |   14            pop
001285EA: 0031 00094306          |   13            jump       L00128614

001285F0: 0001 07D0              |   13 L001285F0: pushw      2000d ; 07D0h
001285F4: 002A 0005              |   14            mov        SP[4],SP[0] ; loc10
001285F8: 002C                   |   14            pop
001285FA: 0009                   |   13            push       0
001285FC: 002A 0004              |   14            mov        SP[3],SP[0] ; loc11
00128600: 002C                   |   14            pop
00128602: 0005 000C              |   13            push       SP[11d] ; loc2
00128606: 000A                   |   14            push       1
00128608: 005A 00001173          |   15            callasm    SA_GetShipTypeMaxExtraRotSpeed ; 00001173
0012860E: 002A 0003              |   14            mov        SP[2],SP[0] ; loc12
00128612: 002C                   |   14            pop
00128614: 0005 0005              |   13 L00128614: push       SP[4] ; loc9
00128618: 0005 0004              |   14            push       SP[3] ; loc11
0012861C: 0005 0004              |   15            push       SP[3] ; loc12
00128620: 0005 0007              |   16            push       SP[6] ; loc10
00128624: 0005 000A              |   17            push       SP[9] ; loc8
00128628: 0005 000C              |   18            push       SP[11d] ; loc7
0012862C: 000F                   |   19            push       6
0012862E: 0058 000184E7 00003AEA |   20            call58     global.TotalPriceForNextUnits ; 000184E7, 00003AEA
00128638: 002A 0002              |   14            mov        SP[1],SP[0] ; loc13
0012863C: 002C                   |   14            pop
0012863E: 0005 000A              |   13 L0012863E: push       SP[9] ; loc4
00128642: 0005 0002              |   14            push       SP[1] ; loc13
00128646: 003E                   |   15            add        SP[0],SP[1]
00128648: 002A 000B              |   14            mov        SP[10d],SP[0] ; loc4
0012864C: 002C                   |   14            pop
0012864E: 002E 0007              |   13            popx       7
00128652: 0031 00094196          |    6            jump       L00128334

00128658: 0005 0004              |    6 L00128658: push       SP[3] ; loc3
0012865C: 0005 0004              |    7            push       SP[3] ; loc4
00128660: 003E                   |    8            add        SP[0],SP[1]
00128662: 0009                   |    7            push       0
00128664: 0006 0048              |    8            read       TMENU_TRADE.tm_Tradepartner ; [72d ; 48h]
00128668: 0057 0000035D          |    9            call       GetOwner ; 0000035D
0012866E: 000A                   |    8            push       1
00128670: 0009                   |    9            push       0
00128672: 0001 0834              |   10            pushw      2100d ; 0834h
00128676: 0059 0006EE1B 0000021A |   11            call59     TCLIENT.GetPlayer ;
00128680: 0057 00000366          |   10            call       GetNotoriety ; 00000366
00128686: 000A                   |    8            push       1
00128688: 0058 000165E4 00003BAE |    9            call58     global.GetTitleFromNotoriety ; 000165E4, 00003BAE
00128692: 0007                   |    8            push       SP[0] ; loc8
00128694: 0009                   |    9            push       0
00128696: 004F                   |   10            if SP[0]<>SP[1] then push 0 else push 1
00128698: 0033 0009435E          |    9            if SP[0]=0 then jump L001286C4
0012869E: 002C                   |    8            pop
001286A0: 0001 0064              |    7            pushw      100d ; 64h
001286A4: 0001 0041              |    8            pushw      65d ; 41h
001286A8: 0005 0003              |    9            push       SP[2] ; loc7
001286AC: 000C                   |   10            push       3
001286AE: 005A 000043F1          |   11            callasm    SE_MulDivFix ; 000043F1
001286B4: 002A 0008              |    8            mov        SP[7],SP[0] ; loc1
001286B8: 002E 0007              |    8            popx       7
001286BC: 0035                   |    1            ret

001286BE: 0031 00094365          |                 jump       L001286D2
001286C4: 0007                   |    8 L001286C4: push       SP[0] ; loc8
001286C6: 000A                   |    9            push       1
001286C8: 004F                   |   10            if SP[0]<>SP[1] then push 0 else push 1
001286CA: 0033 00094377          |    9            if SP[0]=0 then jump L001286F6
001286D0: 002C                   |    8            pop
001286D2: 0001 0064              |    7 L001286D2: pushw      100d ; 64h
001286D6: 0001 0040              |    8            pushw      64d ; 40h
001286DA: 0005 0003              |    9            push       SP[2] ; loc7
001286DE: 000C                   |   10            push       3
001286E0: 005A 000043F1          |   11            callasm    SE_MulDivFix ; 000043F1
001286E6: 002A 0008              |    8            mov        SP[7],SP[0] ; loc1
001286EA: 002E 0007              |    8            popx       7
001286EE: 0035                   |    1            ret

001286F0: 0031 0009437E          |                 jump       L00128704
001286F6: 0007                   |    8 L001286F6: push       SP[0] ; loc8
001286F8: 000B                   |    9            push       2
001286FA: 004F                   |   10            if SP[0]<>SP[1] then push 0 else push 1
001286FC: 0033 00094390          |    9            if SP[0]=0 then jump L00128728
00128702: 002C                   |    8            pop
00128704: 0001 0064              |    7 L00128704: pushw      100d ; 64h
00128708: 0001 003F              |    8            pushw      63d ; 3Fh
0012870C: 0005 0003              |    9            push       SP[2] ; loc7
00128710: 000C                   |   10            push       3
00128712: 005A 000043F1          |   11            callasm    SE_MulDivFix ; 000043F1
00128718: 002A 0008              |    8            mov        SP[7],SP[0] ; loc1
0012871C: 002E 0007              |    8            popx       7
00128720: 0035                   |    1            ret

00128722: 0031 00094397          |                 jump       L00128736
00128728: 0007                   |    8 L00128728: push       SP[0] ; loc8
0012872A: 000C                   |    9            push       3
0012872C: 004F                   |   10            if SP[0]<>SP[1] then push 0 else push 1
0012872E: 0033 000943A9          |    9            if SP[0]=0 then jump L0012875A
00128734: 002C                   |    8            pop
00128736: 0001 0064              |    7 L00128736: pushw      100d ; 64h
0012873A: 0001 003E              |    8            pushw      62d ; 3Eh
0012873E: 0005 0003              |    9            push       SP[2] ; loc7
00128742: 000C                   |   10            push       3
00128744: 005A 000043F1          |   11            callasm    SE_MulDivFix ; 000043F1
0012874A: 002A 0008              |    8            mov        SP[7],SP[0] ; loc1
0012874E: 002E 0007              |    8            popx       7
00128752: 0035                   |    1            ret

00128754: 0031 000943B0          |                 jump       L00128768
0012875A: 0007                   |    8 L0012875A: push       SP[0] ; loc8
0012875C: 000D                   |    9            push       4
0012875E: 004F                   |   10            if SP[0]<>SP[1] then push 0 else push 1
00128760: 0033 000943C2          |    9            if SP[0]=0 then jump L0012878C
00128766: 002C                   |    8            pop
00128768: 0001 0064              |    7 L00128768: pushw      100d ; 64h
0012876C: 0001 003D              |    8            pushw      61d ; 3Dh
00128770: 0005 0003              |    9            push       SP[2] ; loc7
00128774: 000C                   |   10            push       3
00128776: 005A 000043F1          |   11            callasm    SE_MulDivFix ; 000043F1
0012877C: 002A 0008              |    8            mov        SP[7],SP[0] ; loc1
00128780: 002E 0007              |    8            popx       7
00128784: 0035                   |    1            ret

00128786: 0031 000943C3          |                 jump       L0012878E
0012878C: 002C                   |    8 L0012878C: pop
0012878E: 0001 0064              |    7 L0012878E: pushw      100d ; 64h
00128792: 0001 003C              |    8            pushw      60d ; 3Ch
00128796: 0005 0003              |    9            push       SP[2] ; loc7
0012879A: 000C                   |   10            push       3
0012879C: 005A 000043F1          |   11            callasm    SE_MulDivFix ; 000043F1
001287A2: 002A 0008              |    8            mov        SP[7],SP[0] ; loc1
001287A6: 002E 0007              |    8            popx       7
001287AA: 0035                   |    1            ret

001287AC: 002E 0001              |                 popx       1
001287B0: 0005 0004              |                 push       SP[3] ;
001287B4: 0005 0004              |                 push       SP[3] ;
001287B8: 003E                   |                 add        SP[0],SP[1]
001287BA: 0009                   |                 push       0
001287BC: 0006 0048              |                 read       TMENU_TRADE.tm_Tradepartner ; [72d ; 48h]
001287C0: 0057 0000035D          |                 call       GetOwner ; 0000035D
001287C6: 000A                   |                 push       1
001287C8: 0009                   |                 push       0
001287CA: 0001 0834              |                 pushw      2100d ; 0834h
001287CE: 0059 0006EE1B 0000021A |                 call59     TCLIENT.GetPlayer ;
001287D8: 0057 00000366          |                 call       GetNotoriety ; 00000366
001287DE: 000A                   |                 push       1
001287E0: 0058 000165E4 00003BAE |                 call58     global.GetTitleFromNotoriety ; 000165E4, 00003BAE
001287EA: 0007                   |                 push       SP[0] ;
001287EC: 0009                   |                 push       0
001287EE: 004F                   |                 if SP[0]<>SP[1] then push 0 else push 1
001287F0: 0033 00094408          |                 if SP[0]=0 then jump L00128818
001287F6: 002C                   |                 pop
001287F8: 0005 0001              |                 push       SP[0] ;
001287FC: 0001 0041              |                 pushw      65d ; 41h
00128800: 0040                   |                 mul        SP[0],SP[1]
00128802: 0001 0064              |                 pushw      100d ; 64h
00128806: 0041                   |                 div        SP[0],SP[1]
00128808: 002A 0008              |                 mov        SP[7],SP[0] ;
0012880C: 002E 0007              |                 popx       7
00128810: 0035                   |                 ret

00128812: 0031 0009440F          |                 jump       L00128826
00128818: 0007                   |      L00128818: push       SP[0] ;
0012881A: 000A                   |                 push       1
0012881C: 004F                   |                 if SP[0]<>SP[1] then push 0 else push 1
0012881E: 0033 0009441F          |                 if SP[0]=0 then jump L00128846
00128824: 002C                   |                 pop
00128826: 0005 0001              |      L00128826: push       SP[0] ;
0012882A: 0001 0040              |                 pushw      64d ; 40h
0012882E: 0040                   |                 mul        SP[0],SP[1]
00128830: 0001 0064              |                 pushw      100d ; 64h
00128834: 0041                   |                 div        SP[0],SP[1]
00128836: 002A 0008              |                 mov        SP[7],SP[0] ;
0012883A: 002E 0007              |                 popx       7
0012883E: 0035                   |                 ret

00128840: 0031 00094426          |                 jump       L00128854
00128846: 0007                   |      L00128846: push       SP[0] ;
00128848: 000B                   |                 push       2
0012884A: 004F                   |                 if SP[0]<>SP[1] then push 0 else push 1
0012884C: 0033 00094436          |                 if SP[0]=0 then jump L00128874
00128852: 002C                   |                 pop
00128854: 0005 0001              |      L00128854: push       SP[0] ;
00128858: 0001 003F              |                 pushw      63d ; 3Fh
0012885C: 0040                   |                 mul        SP[0],SP[1]
0012885E: 0001 0064              |                 pushw      100d ; 64h
00128862: 0041                   |                 div        SP[0],SP[1]
00128864: 002A 0008              |                 mov        SP[7],SP[0] ;
00128868: 002E 0007              |                 popx       7
0012886C: 0035                   |                 ret

0012886E: 0031 0009443D          |                 jump       L00128882
00128874: 0007                   |      L00128874: push       SP[0] ;
00128876: 000C                   |                 push       3
00128878: 004F                   |                 if SP[0]<>SP[1] then push 0 else push 1
0012887A: 0033 0009444D          |                 if SP[0]=0 then jump L001288A2
00128880: 002C                   |                 pop
00128882: 0005 0001              |      L00128882: push       SP[0] ;
00128886: 0001 003E              |                 pushw      62d ; 3Eh
0012888A: 0040                   |                 mul        SP[0],SP[1]
0012888C: 0001 0064              |                 pushw      100d ; 64h
00128890: 0041                   |                 div        SP[0],SP[1]
00128892: 002A 0008              |                 mov        SP[7],SP[0] ;
00128896: 002E 0007              |                 popx       7
0012889A: 0035                   |                 ret

0012889C: 0031 00094454          |                 jump       L001288B0
001288A2: 0007                   |      L001288A2: push       SP[0] ;
001288A4: 000D                   |                 push       4
001288A6: 004F                   |                 if SP[0]<>SP[1] then push 0 else push 1
001288A8: 0033 00094464          |                 if SP[0]=0 then jump L001288D0
001288AE: 002C                   |                 pop
001288B0: 0005 0001              |      L001288B0: push       SP[0] ;
001288B4: 0001 003D              |                 pushw      61d ; 3Dh
001288B8: 0040                   |                 mul        SP[0],SP[1]
001288BA: 0001 0064              |                 pushw      100d ; 64h
001288BE: 0041                   |                 div        SP[0],SP[1]
001288C0: 002A 0008              |                 mov        SP[7],SP[0] ;
001288C4: 002E 0007              |                 popx       7
001288C8: 0035                   |                 ret

001288CA: 0031 00094465          |                 jump       L001288D2
001288D0: 002C                   |      L001288D0: pop
001288D2: 0005 0001              |      L001288D2: push       SP[0] ;
001288D6: 0001 003C              |                 pushw      60d ; 3Ch
001288DA: 0040                   |                 mul        SP[0],SP[1]
001288DC: 0001 0064              |                 pushw      100d ; 64h
001288E0: 0041                   |                 div        SP[0],SP[1]
001288E2: 002A 0008              |                 mov        SP[7],SP[0] ;
001288E6: 002E 0007              |                 popx       7
001288EA: 0035                   |                 ret

001288EC: 002E 0001              |                 popx       1
001288F0: 0009                   |                 push       0
001288F2: 0006 0048              |                 read       TMENU_TRADE.tm_Tradepartner ; [72d ; 48h]
001288F6: 0057 0000035D          |                 call       GetOwner ; 0000035D
001288FC: 000A                   |                 push       1
001288FE: 0009                   |                 push       0
00128900: 0001 0834              |                 pushw      2100d ; 0834h
00128904: 0059 0006EE1B 0000021A |                 call59     TCLIENT.GetPlayer ;
0012890E: 0057 00000366          |                 call       GetNotoriety ; 00000366
00128914: 0007                   |                 push       SP[0] ;
00128916: 0002 000186A0          |                 pushd      100000d ; 000186A0h
0012891C: 004F                   |                 if SP[0]<>SP[1] then push 0 else push 1
0012891E: 0033 000944A2          |                 if SP[0]=0 then jump L0012894C
00128924: 002C                   |                 pop
00128926: 0005 0004              |                 push       SP[3] ;
0012892A: 0005 0004              |                 push       SP[3] ;
0012892E: 003E                   |                 add        SP[0],SP[1]
00128930: 0001 0041              |                 pushw      65d ; 41h
00128934: 0040                   |                 mul        SP[0],SP[1]
00128936: 0001 0064              |                 pushw      100d ; 64h
0012893A: 0041                   |                 div        SP[0],SP[1]
0012893C: 002A 0007              |                 mov        SP[6],SP[0] ;
00128940: 002E 0006              |                 popx       6
00128944: 0035                   |                 ret

00128946: 0031 000944AA          |                 jump       L0012895C
0012894C: 0007                   |      L0012894C: push       SP[0] ;
0012894E: 0001 2710              |                 pushw      10000d ; 2710h
00128952: 004F                   |                 if SP[0]<>SP[1] then push 0 else push 1
00128954: 0033 000944BD          |                 if SP[0]=0 then jump L00128982
0012895A: 002C                   |                 pop
0012895C: 0005 0004              |      L0012895C: push       SP[3] ;
00128960: 0005 0004              |                 push       SP[3] ;
00128964: 003E                   |                 add        SP[0],SP[1]
00128966: 0001 0040              |                 pushw      64d ; 40h
0012896A: 0040                   |                 mul        SP[0],SP[1]
0012896C: 0001 0064              |                 pushw      100d ; 64h
00128970: 0041                   |                 div        SP[0],SP[1]
00128972: 002A 0007              |                 mov        SP[6],SP[0] ;
00128976: 002E 0006              |                 popx       6
0012897A: 0035                   |                 ret

0012897C: 0031 000944C5          |                 jump       L00128992
00128982: 0007                   |      L00128982: push       SP[0] ;
00128984: 0001 03E8              |                 pushw      1000d ; 03E8h
00128988: 004F                   |                 if SP[0]<>SP[1] then push 0 else push 1
0012898A: 0033 000944D8          |                 if SP[0]=0 then jump L001289B8
00128990: 002C                   |                 pop
00128992: 0005 0004              |      L00128992: push       SP[3] ;
00128996: 0005 0004              |                 push       SP[3] ;
0012899A: 003E                   |                 add        SP[0],SP[1]
0012899C: 0001 003F              |                 pushw      63d ; 3Fh
001289A0: 0040                   |                 mul        SP[0],SP[1]
001289A2: 0001 0064              |                 pushw      100d ; 64h
001289A6: 0041                   |                 div        SP[0],SP[1]
001289A8: 002A 0007              |                 mov        SP[6],SP[0] ;
001289AC: 002E 0006              |                 popx       6
001289B0: 0035                   |                 ret

001289B2: 0031 000944E0          |                 jump       L001289C8
001289B8: 0007                   |      L001289B8: push       SP[0] ;
001289BA: 0001 0064              |                 pushw      100d ; 64h
001289BE: 004F                   |                 if SP[0]<>SP[1] then push 0 else push 1
001289C0: 0033 000944F3          |                 if SP[0]=0 then jump L001289EE
001289C6: 002C                   |                 pop
001289C8: 0005 0004              |      L001289C8: push       SP[3] ;
001289CC: 0005 0004              |                 push       SP[3] ;
001289D0: 003E                   |                 add        SP[0],SP[1]
001289D2: 0001 003E              |                 pushw      62d ; 3Eh
001289D6: 0040                   |                 mul        SP[0],SP[1]
001289D8: 0001 0064              |                 pushw      100d ; 64h
001289DC: 0041                   |                 div        SP[0],SP[1]
001289DE: 002A 0007              |                 mov        SP[6],SP[0] ;
001289E2: 002E 0006              |                 popx       6
001289E6: 0035                   |                 ret

001289E8: 0031 000944FA          |                 jump       L001289FC
001289EE: 0007                   |      L001289EE: push       SP[0] ;
001289F0: 0013                   |                 push       10d ; 0Ah
001289F2: 004F                   |                 if SP[0]<>SP[1] then push 0 else push 1
001289F4: 0033 0009450D          |                 if SP[0]=0 then jump L00128A22
001289FA: 002C                   |                 pop
001289FC: 0005 0004              |      L001289FC: push       SP[3] ;
00128A00: 0005 0004              |                 push       SP[3] ;
00128A04: 003E                   |                 add        SP[0],SP[1]
00128A06: 0001 003D              |                 pushw      61d ; 3Dh
00128A0A: 0040                   |                 mul        SP[0],SP[1]
00128A0C: 0001 0064              |                 pushw      100d ; 64h
00128A10: 0041                   |                 div        SP[0],SP[1]
00128A12: 002A 0007              |                 mov        SP[6],SP[0] ;
00128A16: 002E 0006              |                 popx       6
00128A1A: 0035                   |                 ret

00128A1C: 0031 0009450E          |                 jump       L00128A24
00128A22: 002C                   |      L00128A22: pop
00128A24: 0005 0004              |      L00128A24: push       SP[3] ;
00128A28: 0005 0004              |                 push       SP[3] ;
00128A2C: 003E                   |                 add        SP[0],SP[1]
00128A2E: 0001 003C              |                 pushw      60d ; 3Ch
00128A32: 0040                   |                 mul        SP[0],SP[1]
00128A34: 0001 0064              |                 pushw      100d ; 64h
00128A38: 0041                   |                 div        SP[0],SP[1]
00128A3A: 002A 0007              |                 mov        SP[6],SP[0] ;
00128A3E: 002E 0006              |                 popx       6
00128A42: 0035                   |                 ret

00128A44: 002E 0006              |                 popx       6
00128A48: 0009                   |                 push       0
00128A4A: 0035                   |                 ret


 Cкрытый текст   (кликните здесь для просмотра)
Код:
function TMENU_TRADE.ShipPrice(arg1)
{
 arg1->GetGType();
 loc2 = arg1->GetSubType();
 loc4 = 0;
 loc5 = arg1->GetWares();
 loc3 = TMENU_TRADE.tm_Tradepartner->GetWareTypePrice(arg1->GetGType(), arg1->GetSubType());
 if(loc3 == 0)
 {
  loc3 = 4 * SA_GetTypeRelValue(arg1->GetGType(), arg1->GetSubType()) * global.GetValueFactor(arg1->GetGType());
  loc3 = 4 * SE_MulDivFix(SA_GetTypeRelValue(arg1->GetGType(), arg1->GetSubType()), global.GetFixedValueFactor(arg1->GetGType()), 65536);
 }
 loc6 = SE_TableNext(loc5, 0);
 for(; loc6 != 0; loc6 = SE_TableNext(loc5, loc6))
 {
  loc7 = loc6 >> 16 & 255;
  loc8 = loc6 & 255;
  loc9 = arg1->GetWareTypeCount(loc7, loc8);
  loc4 = 0;
  loc3 = 0;
  loc2 = 0;
  if((loc8 != 17) && (loc8 != 18) && (loc8 != 16) || (loc8 != 17) && (loc8 != 18) && (loc8 != 16))
  {
   if((loc7 != 16) || (loc8 < 11))
   {
    loc14 = SE_MulDivFix(SA_GetTypeRelValue(loc7, loc8), global.GetFixedValueFactor(loc7), 65536);
    loc15 = 4 * loc14 * SA_GetTypePriMaxP(loc7, loc8) / 100;
    loc13 = loc9 * (4 * loc14 - loc15);
   }
   else
   {
    loc13 = loc9 * TMENU_TRADE.tm_Tradepartner->GetWareTypePrice(loc7, loc8);
    if(loc13 == 0)
    {
     loc13 = loc9 * 4 * SA_GetTypeRelValue(loc7, loc8) * global.GetValueFactor(loc7);
     loc13 = loc9 * 4 * SE_MulDivFix(SA_GetTypeRelValue(loc7, loc8), global.GetFixedValueFactor(loc7), 65536);
    }
   }
  }
  else
  {
   if(loc8 == 16)
   {
    loc10 = 1000;
    loc4 = loc10;
    loc9 = arg1->GetExtraTradeContainerSize();
    loc11 = SA_GetShipTypeTradeContainerSize(loc2);
    loc3 = loc11;
    loc12 = SA_GetShipTypeMaxTradeContainerSize(loc2) - SA_GetShipTypeTradeContainerSize(loc2);
    loc2 = loc12;
    loc11 = 0;
    loc3 = loc11;
   }
   else
   {
    if(loc8 == 17)
    {
     loc10 = 3000;
     loc4 = loc10;
     loc11 = 0;
     loc3 = loc11;
     loc12 = SA_GetShipTypeMaxExtraSpeed(loc2);
     loc2 = loc12;
    }
    else
    {
     loc10 = 2000;
     loc4 = loc10;
     loc11 = 0;
     loc3 = loc11;
     loc12 = SA_GetShipTypeMaxExtraRotSpeed(loc2);
     loc2 = loc12;
    }
   }
   loc13 = global.TotalPriceForNextUnits(loc7, loc8, loc4, loc2, loc3, loc9);
  }
  loc4 = loc4 + loc13;
 }
 loc7 = loc3 + loc4;
 loc8 = global.GetTitleFromNotoriety(class(TCLIENT).GetPlayer()->GetNotoriety(TMENU_TRADE.tm_Tradepartner->GetOwner()));
 if(loc8 == 0)
 {
  return(SE_MulDivFix(loc7, 65, 100));
 }
 if(loc8 == 1)
 {
  return(SE_MulDivFix(loc7, 64, 100));
 }
 if(loc8 == 2)
 {
  return(SE_MulDivFix(loc7, 63, 100));
 }
 if(loc8 == 3)
 {
  return(SE_MulDivFix(loc7, 62, 100));
 }
 if(loc8 == 4)
 {
  return(SE_MulDivFix(loc7, 61, 100));
 }
 return(SE_MulDivFix(loc7, 60, 100));
}
    Добавлено: 16:03 23-03-2018   
Канал X-Tension/X-BTF: «Структура данных X-Tension»
На страницу: Пред.  1, 2, 3 ... 13, 14, 15    Перейти:   Все страницы
  
Показать: 
Предыдущая тема | Следующая тема |
К списку каналов | Наверх страницы
Цитата не в тему: Не Егопь и неотъЕгоплен будешь... (2-я заповедь пророка Harley)

  » Структура данных X-Tension | страница 15
Каналы: Новости | Elite | Elite: Dangerous | Freelancer | Star Citizen | X-Tension/X-BTF | X2: The Threat | X3: Reunion | X3: Terran Conflict | X Rebirth | X4: Foundations | EVE Online | Orbiter | Kerbal Space Program | Evochron | VoidExpanse | Космические Миры | Онлайновые игры | Другие игры | Цифровая дистрибуция | play.elite-games.ru | ЗВ 2: Гражданская война | Творчество | Железо | Игра Мечты | Сайт
   Дизайн Elite Games V5 beta.18